一个简单的问题,我敢肯定,这比我想像的要简单。
所以可以说我有一个包含3列的表
colA colB colC
D Adam 100
D Dennis 200
D Tim 300
C Sharon 450
C Cindy 400
如何按colA分组,取最大colC并返回colB的对应值
例如
colA colB colC
D Tim 300
C Sharon 450
我希望这是有道理的。大家好!
答案 0 :(得分:0)
您可以执行以下操作。但是,如果[colC]包含特定[colA]值的重复值,则可能会产生错误。
SUMMARIZECOLUMNS(
'MyTable'[colA],
"colB",
VAR maxC = MAX('MyTable'[colC])
RETURN CALCULATE(VALUES('MyTable'[colB]), 'MyTable'[colC] = maxC)
"colC",
MAX('MyTable'[colC])
)
答案 1 :(得分:0)
一种方法是向表中添加一个等级列,然后进行可视级别的Top N过滤器。
Rank = RANKX(
FILTER(
ALL( Table1 ),
Table1[colA] = EARLIER( Table1[colA] )
),
Table1[colC]
)
一旦有了该新列,就将colA
,colB
和colC
添加到表或矩阵可视化文件中,并将Rank
列放入可视化级别过滤器部分然后选择
Filter Type: Top N
Show items: Bottom 1
By value: Rank
然后,您的表应仅显示每个colC
值的最大colA
值。