You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用PowerBI DAX:不分组统计Order_ID重复次数及订单产品数

Got it,这两个需求都是要在保留原表重复行、不分组的前提下计算对应数值,我给你写好DAX度量值并解释清楚:

需求1:计算Order_ID的重复次数(不分组)

要让原表的每一行都显示当前Order_ID在整个表中出现的总次数,不用合并相同Order_ID的行,可以用这个度量值:

Order_ID重复次数 = 
CALCULATE(
    COUNTROWS(Orders),
    ALLEXCEPT(Orders, Orders[Order_ID])
)

逻辑说明:ALLEXCEPT函数会移除除了Order_ID之外的所有筛选上下文,所以CALCULATE会统计整个表中与当前行Order_ID完全匹配的所有行数。这样不管原表有多少重复的Order_ID行,每一行都会显示对应的重复次数,完全保留原表结构。

需求2:计算每个Order_ID对应的Product_ID数量(保留原表格式)

这里分两种常见场景,你可以根据实际需求选择:

场景A:统计该Order_ID下的不同Product_ID数量(去重)

如果需要知道每个订单包含多少种不同的产品,用这个度量值:

订单不同产品数 = 
CALCULATE(
    DISTINCTCOUNT(Orders[Product_ID]),
    ALLEXCEPT(Orders, Orders[Order_ID])
)

逻辑说明:DISTINCTCOUNT会统计当前Order_ID对应的唯一Product_ID数量,配合ALLEXCEPT锁定当前行的Order_ID,确保每一行都显示该订单的独特产品数,不改变原表的重复行结构。

场景B:统计该Order_ID下的所有产品条目总数(含重复)

如果需要统计订单下所有产品记录的总数(比如同一个产品多次出现在订单里也会被计数),用这个度量值:

订单产品条目总数 = 
CALCULATE(
    COUNTROWS(Orders),
    ALLEXCEPT(Orders, Orders[Order_ID])
)

逻辑说明:和需求1的核心逻辑一致,只是这里的业务意义是统计当前订单包含的产品记录总数,同样保留原表的所有重复行。


内容的提问来源于stack exchange,提问作者Loay Haggag

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.12 05:14:20