count
count 的以下语法:
count(expr)或COUNT(DISTINCT expr)。count()或COUNT(*)。count()语法是 ClickHouse 特有的。
COUNT(DISTINCT ...) 语法。
这种写法的行为取决于 count_distinct_implementation 设置。
它定义了使用 uniq* 函数中的哪一个来执行该操作。
默认使用 uniqExact 函数。
默认情况下,SELECT count() FROM table 查询会利用 MergeTree 的元数据进行优化。
如果需要使用行级安全,请通过 optimize_trivial_count_query 设置禁用此优化。
不过,SELECT count(nullable_column) FROM table 查询也可以通过启用 optimize_functions_to_subcolumns 设置进行优化。
当 optimize_functions_to_subcolumns = 1 时,该函数只会读取 null 子列,而不是读取和处理整列数据。
查询 SELECT count(n) FROM table 会转换为 SELECT sum(NOT n.null) FROM table。
语法
expr— 可选。一个表达式。该函数统计此表达式返回非 NULL 的次数。Expression
UInt64
示例
基本行数统计
Query
Response
Query
Response