설명
Pretty 포맷은 데이터를 유니코드 아트 표 형태로 출력하며,
터미널에 색상을 표시하기 위해 ANSI 이스케이프 시퀀스를 사용합니다.
표의 전체 격자를 그리며, 각 행은 터미널에서 두 줄을 차지합니다.
각 결과 블록은 각각 별도의 표로 출력됩니다.
이 방식은 결과를 버퍼링하지 않고 블록을 출력하기 위해 필요합니다(모든 값의 표시 너비를 미리 계산하려면 버퍼링이 필요합니다).
NULL은 ᴺᵁᴸᴸ로 출력됩니다.
사용 예시
예시(PrettyCompact 포맷):
Query
Response
Pretty 포맷에서는 행이 어떤 경우에도 이스케이프되지 않습니다. 대신 값과 컬럼명에 포함된 출력 불가능한 제어 문자(C0 제어 문자 0x00-0x1F 및 DEL 0x7F)는 기본적으로 대응하는 유니코드 “Control Pictures”(U+2400-U+2421) 문자로 표시됩니다. 따라서 이러한 문자가 화면에 그대로 드러나면서도 테이블 모양이 깨지지 않습니다. 예를 들어 NUL은 ␀로 표시됩니다:
Query
Response
TAB, 줄 바꿈, ESC는 예외입니다. 터미널은 이 문자들을 무시하지 않고 해석하므로 항상 그대로 출력됩니다. 탭은 다음 탭 위치로 이동하며, ANSI 이스케이프 시퀀스는 데이터에 시각화 효과를 담을 수 있게 해 줍니다. 줄 바꿈도 계속 줄을 나눕니다. output_format_pretty_multiline_fields가 활성화되어 있으면 테이블 셀 내부에서 줄을 나누고, 그렇지 않으면 그대로 출력됩니다. 단, 컬럼명은 이 예외에서 다시 제외됩니다. 헤더와 푸터는 한 줄로 구성되므로, 컬럼명에 포함된 줄 바꿈은 다른 제어 문자와 마찬가지로 대체됩니다.
제어 문자를 그대로 출력하려면 output_format_pretty_display_control_characters를 비활성화하세요:
Query
NUL 바이트가 그대로 포함됩니다. 터미널은 이 바이트를 표시하지 않으므로 해당 문자는
보이지 않으며, 행은 그 행을 기준으로 계산된 테두리보다 한 칸 더 넓어집니다. Control Picture를 표시하면
바로 이러한 테이블 깨짐 현상을 방지할 수 있습니다.
터미널에 너무 많은 데이터가 출력되지 않도록, 처음 10,000개 행만 출력됩니다.
행 수가 10,000개 이상이면 “Showed first 10 000” 메시지가 출력됩니다.
이 포맷은 쿼리 결과를 출력하는 데만 적합하며, 데이터를 파싱하는 용도로는 적합하지 않습니다.
WITH TOTALS를 사용하는 경우)과 극값(‘extremes’가 1로 설정된 경우) 출력도 지원합니다.
이 경우 합계 값과 극값은 주요 데이터 뒤에 별도의 테이블로 출력됩니다.
이는 PrettyCompact 포맷을 사용하는 다음 예시에서 확인할 수 있습니다:
Query
Response
포맷 설정
다음 설정은 모든Pretty 형식에 공통으로 적용됩니다: