DISTINCTCOUNT

适用于:计算列计算表度量值视觉计算

计算列中非重复值的数目。

语法

DISTINCTCOUNT(<column>)

参数

术语 描述
column 包含要计数的值的列

返回值

column中的非重复值数。

言论

  • 此函数允许的唯一参数是列。 可以使用包含任何类型的数据的列。 当函数找不到要计数的行时,它将返回 BLANK,否则返回非重复值的计数。

  • DISTINCTCOUNT 函数计算 BLANK 值。 若要跳过 BLANK 值,请使用 DISTINCTCOUNTNOBLANK 函数。

  • 在计算列或行级别安全性 (RLS) 规则中使用时,不支持在 DirectQuery 模式下使用此函数。

以下示例演示如何计算列 ResellerSales_USD[SalesOrderNumber] 中不同销售订单的数量。

= DISTINCTCOUNT(ResellerSales_USD[SalesOrderNumber])

将上述度量值用于表的侧边和产品类别中的日历年份,返回以下结果:

行标签 辅料 自行车 服装 组件 - 总计
2005 135 345 242 205 366
2006 356 850 644 702 1015
2007 531 1234 963 1138 1521
2008 293 724 561 601 894
1 1
总计 1315 3153 2410 2646 1 3797

了解非重复计数总计

非重复计数总计不累加。 总计不是每个类别中的值的总和。

在上表中,你可能预计2005年(366)的总计等于附件(135)+ 自行车(345)+ 服装(242)+ 组件(205)= 927。 然而,实际总计为366,这要低得多。

发生这种情况是因为同一顺序可以出现在多个类别中。 例如,如果 order #1001 同时包含自行车和配件,则订单在“自行车”列中和“附件”列中计数一次。 但是,计算行的总计时,订单 #1001 只计算一次,因为它仍然只有一个不同的顺序。

这是非重复计数的正确和预期行为:

  • 类别值:仅计算该特定类别中的非重复订单。
  • 行总计:计算该年份所有类别中的非重复订单数 - 每个订单仅计数一次,而不管它出现在多少个类别中。
  • 总计:计算整个数据集中的非重复订单。

如果需要总计,请考虑使用或COUNT改用COUNTROWS。 但是,请注意,这些函数对行进行计数,而不是非重复值,并且会给出不同的结果。