返回列中唯一值的估计
Important
APPROXIMATEDISTINCTCOUNT对导入和 Direct Lake 存储模式的支持目前为预览版。
语法
APPROXIMATEDISTINCTCOUNT(<columnName>)
参数
| 术语 | 描述 |
|---|---|
column |
输入列。 |
参数 column 不能是表达式。
返回值
column中非重复值的大致数目。
言论
此函数的唯一参数是列。 使用包含任何类型的数据的列。 当函数没有找到要计数的行时,它将返回一个
BLANK;否则,它将返回非重复值的计数。在导入模式下,OneLake 上的 Direct Lake 和 SQL 上的 Direct Lake 没有回退,该函数使用引擎端 HyperLogLog 算法。
在 DirectQuery 模式下,函数在数据源中调用相应的聚合操作。 Azure SQL、Azure Synapse专用 SQL 池、BigQuery、Databricks 和 Snowflake 支持此行为。 当 Direct Lake on SQL 回退到 DirectQuery 模式时,它使用此 DirectQuery 行为。
当可接受近似结果时,将此函数用于高基数列。 需要确切的结果时使用 DISTINCTCOUNT 。
对于低基数列,
APPROXIMATEDISTINCTCOUNT执行速度可能会慢于DISTINCTCOUNT。 它还可以使用比DISTINCTCOUNT大型模型、高并发性或多个分组组更多的内存。对于 Import 和 Direct Lake 模型,返回
APPROXIMATEDISTINCTCOUNT的估计计数的错误率约为 1.6%。