Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Pretty

输入 输出 别名

描述

Pretty 格式会将数据输出为 Unicode 艺术表格, 并使用 ANSI 转义序列在终端中显示颜色。 表格会绘制完整的网格,并且每一行在终端中占用两行。 每个结果块都会作为单独的表输出。 这样做是必要的,因为只有这样才能在不缓冲结果的情况下输出块 (否则需要先进行缓冲,以预先计算所有值的可见宽度) 。

NULL 会输出为 ᴺᵁᴸᴸ

示例用法

示例 (以 PrettyCompact 格式展示) :

Querysql
SELECT * FROM t_null
Responseresponse
┌─x─┬────y─┐
│ 1 │ ᴺᵁᴸᴸ │
└───┴──────┘

在任何 Pretty 格式中,行都不会进行转义。以下以 PrettyCompact 格式为例:

Querysql
SELECT 'String with \'quotes\' and \t character' AS Escaping_test
Responseresponse
┌─Escaping_test────────────────────────┐
│ String with 'quotes' and      character │
└──────────────────────────────────────┘

为避免向终端输出过多数据,只会打印前 10,000 行。 如果行数大于或等于 10,000,则会打印消息 "Showed first 10 000"。

Pretty 格式支持输出总计值 (使用 WITH TOTALS 时) 和极值 (当 'extremes' 设为 1 时) 。 在这些情况下,总计值和极值会在主体数据之后以单独的表格形式输出。 如下示例所示,使用的是 PrettyCompact 格式:

Querysql
SELECT EventDate, count() AS c 
FROM test.hits 
GROUP BY EventDate 
WITH TOTALS 
ORDER BY EventDate 
FORMAT PrettyCompact
Responseresponse
┌──EventDate─┬───────c─┐
│ 2014-03-17 │ 1406958 │
│ 2014-03-18 │ 1383658 │
│ 2014-03-19 │ 1405797 │
│ 2014-03-20 │ 1353623 │
│ 2014-03-21 │ 1245779 │
│ 2014-03-22 │ 1031592 │
│ 2014-03-23 │ 1046491 │
└────────────┴─────────┘

Totals:
┌──EventDate─┬───────c─┐
│ 1970-01-01 │ 8873898 │
└────────────┴─────────┘

Extremes:
┌──EventDate─┬───────c─┐
│ 2014-03-17 │ 1031592 │
│ 2014-03-23 │ 1406958 │
└────────────┴─────────┘

格式设置

以下设置适用于所有 Pretty 格式:

设置 说明 默认值
output_format_pretty_max_rows Pretty 格式的最大行数限制。 10000
output_format_pretty_max_column_pad_width Pretty 格式中,列内所有值的填充最大宽度。 250
output_format_pretty_max_value_width Pretty 格式中显示值的最大宽度。超过该宽度时将被截断。 10000
output_format_pretty_color 在 Pretty 格式中使用 ANSI 转义序列显示颜色。 true
output_format_pretty_grid_charset 用于打印网格边框的字符集。可用字符集:ASCII、UTF-8。 UTF-8
output_format_pretty_row_numbers 在 Pretty 输出格式中,在每行前添加行号。 true
output_format_pretty_display_footer_column_names 如果表包含很多行,则在页脚中显示列名。 true
output_format_pretty_display_footer_column_names_min_rows 设置显示页脚的最小行数,前提是已启用 output_format_pretty_display_footer_column_names 50
Navigation