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

Power BI卡片视觉对象中获取出现次数最多ID的问题排查

Power BI 度量值修正:返回出现次数最多的Customer ID

你的度量值问题出在两个关键地方:

  1. 排序方向错误:RANKX用了ASC升序,导致排名第一的是出现次数最少的ID,应该改成DESC降序
  2. 计数上下文不对:COUNTX(Sales, Sales[Customer ID])没有正确限定当前Customer ID的上下文,计数逻辑不准确

修正后的度量值(简化版)

Most Frequent Customer ID = 
VAR CustomerCounts = 
    ADDCOLUMNS(
        VALUES(Sales[Customer ID]),
        "@Count", CALCULATE(COUNT(Sales[Customer ID]))
    )
VAR TopCustomer = 
    TOPN(1, CustomerCounts, [@Count], DESC)
RETURN
    SELECTCOLUMNS(TopCustomer, "ID", Sales[Customer ID])

基于你原代码的修正版

test = 
FIRSTNONBLANK(
    TOPN(
        1,
        VALUES(Sales[Customer ID]),
        RANKX(
            ALL(Sales[Customer ID]),
            CALCULATE(COUNT(Sales[Customer ID])),,
            DESC, DENSE
        )
    ),
    Sales[Customer ID]
)

关键修正说明

  • 把RANKX的排序参数从ASC改为DESC,确保排名第一的是出现次数最多的ID
  • 用CALCULATE(COUNT(Sales[Customer ID]))替代原COUNTX写法,让计数在单个Customer ID的上下文里正确执行
  • 可选添加DENSE参数处理并列情况:如果有多个ID出现次数相同,DENSE会让它们获得相同排名,TOPN会返回所有并列的ID;如果只需要返回其中一个,去掉DENSE即可

如果有多个ID出现次数相同,上述度量值会返回Power BI默认排序下的第一个ID。

内容的提问来源于stack exchange,提问作者Vitor Freire

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 15:20:24