你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

count_distinctif()(聚合函数)-(预览版)

适用于:✅Microsoft Fabric✅Azure 数据资源管理器Azure MonitorMicrosoft✅ Sentinel

按条件计算每个摘要组的标量表达式指定的唯一值个数;如果省略摘要组,则计算唯一值总数。 仅对 predicate 的计算结果为 true 的记录进行计数。

注意

此函数与 summarize 运算符结合使用。

如果只需要估算唯一值计数,建议使用资源消耗较少的 dcountif 聚合函数。

注意

  • 此函数限制为 1 亿个唯一值。 尝试对返回太多值的表达式应用此函数会产生运行时错误 (HRESULT: 0x80DA0012)。
  • 对来自不同群集的多个数据源进行操作时,函数性能可能会降级。
  • 从不同 Eventhouse 对多个数据源进行操作时,函数性能可能会降低。

语法

count_distinctif (expr, 谓词)

详细了解语法约定

参数

客户 类型​​ 必需 说明
expr 标量 (scalar) ✔️ 要对其唯一值进行计数的表达式。
predicate string ✔️ 用于筛选要聚合的记录的表达式。

返回

整数值,适用于 predicate 计算为 true 的所有记录,指示每个摘要组的 expr 的唯一值数。

示例

此示例显示了在每个州有多少种致命风暴事件发生。 仅计算死亡计数不为零的风暴事件。

注意

对来自不同群集的多个数据源进行操作时,函数性能可能会降级。

StormEvents
| summarize UniqueFatalEvents=count_distinctif(EventType,(DeathsDirect + DeathsIndirect)>0) by State
| where UniqueFatalEvents > 0
| top 5 by UniqueFatalEvents

输出

状态 UniqueFatalEvents
德克萨斯 12
CALIFORNIA 12
OKLAHOMA 10
NEW YORK 9
KANSAS 9