问题描述
下面是我的两个表,我希望通过 DAX 从我的主表中获得第一个和第二个最高的金额,这样我就可以获得具有两个不同列的 Desired 表,一个是悉尼和布里斯班的第一个最高,另一个是第二个最高的同一城市
解决方法
Table 2 =
VAR _1 =
ADDCOLUMNS (
_t,"rank",RANKX ( ALLEXCEPT ( _t,_t[City] ),CALCULATE ( MAX ( _t[val] ) ),DESC )
)
VAR _2 =
SELECTCOLUMNS (
FILTER ( _1,[rank] = 1 ),"City",[City] & "","firstHighest",[val] + 0
)
VAR _3 =
SELECTCOLUMNS (
FILTER ( _1,[rank] = 2 ),"secondHighest",[val] + 0
)
VAR _4 =
NATURALLEFTOUTERJOIN ( _2,_3 )
RETURN
_4