count | 您所在的位置:网站首页 › 数据库统计数量函数 › count |
count 计数行数或非空值。 ClickHouse支持以下 count 语法: count(expr) 或 COUNT(DISTINCT expr)。count() 或 COUNT(*). 该 count() 语法是ClickHouse特定的。参数 该函数可以采取: 零参数。一个 表达式。返回值 如果没有参数调用函数,它会计算行数。如果 表达式 被传递,则该函数计数此表达式返回非null的次数。 如果表达式返回 可为空类型的值,count的结果仍然不 Nullable。 如果表达式对于所有的行都返回 NULL ,则该函数返回 0 。在这两种情况下,返回值的类型为 UInt64。 详细信息 ClickHouse支持 COUNT(DISTINCT ...) 语法,这种结构的行为取决于 count_distinct_implementation 设置。 它定义了用于执行该操作的 uniq*函数。 默认值是 uniqExact函数。 SELECT count() FROM table 这个查询未被优化,因为表中的条目数没有单独存储。 它从表中选择一个小列并计算其值的个数。 示例 示例1: SELECT count() FROM t┌─count()─┐│ 5 │└─────────┘示例2: SELECT name, value FROM system.settings WHERE name = 'count_distinct_implementation'┌─name──────────────────────────┬─value─────┐│ count_distinct_implementation │ uniqExact │└───────────────────────────────┴───────────┘SELECT count(DISTINCT num) FROM t┌─uniqExact(num)─┐│ 3 │└────────────────┘这个例子表明 count(DISTINCT num) 是通过 count_distinct_implementation 的设定值 uniqExact 函数来执行的。 |
CopyRight 2018-2019 实验室设备网 版权所有 |