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

RANKX公式重复排序问题:资产数不同的计划获相同排名

DAX排名异常:ALL(表)改ALL(列)生效的原因解析

问题本质

你用ALL(arb_plans)作为RANKX的筛选上下文时,RANKX是基于arb_plans表的整行数据来计算排名的。如果你的arb_plans表除了plan id外还有其他列(比如计划名称、更新时间),哪怕两个计划的资产总数不一样,只要表中存在某些行的其他字段差异导致RANKX误判了“对比维度”,就会出现资产数不同却排名相同的情况——简单说,它把“行的唯一性”当成了排名参考,而非单纯的资产数值。

修改生效的核心逻辑

换成ALL(arb_plans[plan id])后,RANKX的对比范围被精准限定为所有唯一的计划ID。每个计划ID对应唯一的资产总数,这时候RANKX只会根据Total Assets的数值大小排序排名,完全不受表中其他列的干扰,自然修正了排名异常的问题。

额外验证点

如果想确认根源,可以做两个简单计算:

  • 用DISTINCTCOUNT(arb_plans[plan id])统计唯一计划数
  • 用COUNTROWS(arb_plans)统计表总行数
    如果两个数值不一致,说明表中存在重复的计划ID行(比如同一计划有多条不同状态的记录),这就是最初用ALL(arb_plans)导致排名异常的直接原因。

内容的提问来源于stack exchange,提问作者Carl Sagan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 07:34:59