- 类别:
UNIQUE_COUNT(系统数据指标函数)¶
返回表中指定列的唯一非 NULL 值总数。
本主题提供直接调用该函数的语法。要了解如何将该函数与表或视图关联以使其定期运行,请参阅 关联 DMF 以自动执行数据质量检查。
语法¶
SNOWFLAKE.CORE.UNIQUE_COUNT(<query>)
实参¶
query
指定一个 SQL 查询,该查询仅投射单个列。
允许的数据类型¶
query
投射的列必须具有以下数据类型之一:
DATE
FLOAT
NUMBER
TIMESTAMP_LTZ
TIMESTAMP_NTZ
TIMESTAMP_TZ
VARCHAR
返回¶
该函数返回一个数据类型为 NUMBER 的标量值。
访问控制要求¶
关联和运行系统 DMF 需要系统 DMF 的 USAGE 权限。您可以授予 SNOWFLAKE.DATA_METRIC_USER 数据库角色,以便为用户提供所有系统 DMFs 的 USAGE 权限。有关更多信息,请参阅 授予系统 DMFs 的 USAGE 权限。
有关创建具有指定权限集的自定义角色的说明,请参阅 创建自定义角色。
使用说明¶
手动调用系统 DMF 时,无需指定所使用的允许数据类型。只需为要测量的列指定查询。Snowflake 将函数允许的数据类型与列的数据类型进行匹配。
示例¶
测量 SSN 列(即,US 社会安全号码)的唯一非 NULL 值的数量:
SELECT SNOWFLAKE.CORE.UNIQUE_COUNT(
SELECT
ssn
FROM hr.tables.empl_info
);
+------------------------------------------------------------------+
| SNOWFLAKE.CORE.UNIQUE_COUNT(SELECT ssn FROM hr.tables.empl_info) |
+------------------------------------------------------------------+
| 42 |
+------------------------------------------------------------------+