跳到主要内容

COUNT_DISTINCT

聚合函数。

count(distinct ...) 函数用于计算一组值的唯一值数量。

若要从大数据集中以较少的内存和时间获得估计结果,请考虑使用 APPROX_COUNT_DISTINCT

警告

NULL 值不会被计数。

语法

COUNT(distinct <expr> ...)
UNIQ(<expr>)

参数

参数描述
<expr>任何表达式,参数的大小为 [1, 32]

返回类型

UInt64

示例

创建表并插入示例数据

CREATE TABLE products (
id INT,
name VARCHAR,
category VARCHAR,
price FLOAT
);

INSERT INTO products (id, name, category, price)
VALUES (1, 'Laptop', 'Electronics', 1000),
(2, 'Smartphone', 'Electronics', 800),
(3, 'Tablet', 'Electronics', 600),
(4, 'Chair', 'Furniture', 150),
(5, 'Table', 'Furniture', 300);

查询示例:计算不同类别的数量

SELECT COUNT(DISTINCT category) AS unique_categories
FROM products;

结果

| unique_categories |
|-------------------|
| 2 |
欢迎体验 Databend Cloud

基于 Rust + 对象存储构建的新一代多模态数仓,一个平台即可进行 BI、向量、全文检索及地理空间分析。

支持标准 SQL,自动弹性伸缩,助您快速构建现代化数据平台。

注册即领 ¥200 代金券。

注册体验