powerbi - DAX,PowerBI:具有来自其他计算列的年度最大值的计算列
问题描述
我有一个计算表,其中包含日历表中的日期,[Rok] 是 Year([Data]),KB... 列只是这一天的值,并且那天过去 3 年,Avg KB t-3 是计算列的平均值过去 3 年的价值。
我需要为每个 Rok 添加一个 MAX 为 [Avg KB t-3] 的计算列。
这听起来很容易,但我尝试了许多不同的方法并失败了。
请用你的想法启发我,因为我输了:)
解决方案
好的,所以我采取了不同的方法并最终得到了这个:
MaxAVG =
VAR tabela =
CALCULATETABLE(
ADDCOLUMNS(
DATESBETWEEN('Calendar Table'[Data]; [Start]; [Koniec]);
"Avg"; [AvgKB]
);
ALLEXCEPT(
'WSF Baza';
'WSF Baza'[Poziom]
)
)
RETURN
IF(
OR(
MAX('Calendar Table'[Data]) < [Start];
MAX('Calendar Table'[Data]) > [Koniec]
);
BLANK();
MAXX(tabela;[Avg])
)
首先,我正在创建一个“虚拟”表,其中包含我感兴趣的一段时间内的所有日期,并添加计算出的某天过去 3 年平均值的列。'WSF Baza'[Poziom] 是我希望能够过滤我的数据的参数。
然后通过 IF 语句,我将结果缩小到我感兴趣的日期,并且对于此期间的每个日期,我返回整个期间的平均值 MAX。