我尝试在多个Quarter之间进行DAX比较。
在我们的案例中,我们使用带有平台的Power Pivot作为源。 (没有星型模式)
这是一个小例子:
我们的来源如下:
这就是我们现在所拥有的:
这是我们的预期结果:
我试图用EARLIER()和EARLIEST()函数做一些事情,但它确实不好。 (类似于MDX LAG()函数)。 在我们的具体情况下,我们没有明确的日期,我不确定我是否可以使用ParallelPeriod函数
SumValuePrevious:=CALCULATE
(
SUM(Data[Value]);
FILTER(ALL(Data[Quarter]);
SUMX
(
FILTER(Data; EARLIEST(Data[Quarter]) = Data[Quarter] )
;
[Value]
)
)
)

但我得到了同样的结果:
你有什么可以帮助我吗?
非常感谢你的帮助,
阿诺
答案 0 :(得分:2)
使用日期的最佳方法是添加日期表。 然后你可以使用默认的日期函数
Previous Quarter:= CALCULATE(SUM(myTable[myColumn]), PREVIOUSQUARTER('Date'[Date]))
添加日期表:
Date =
ADDCOLUMNS (
CALENDAR (DATE(2000;1;1); DATE(2025;12;31));
"DateAsInteger"; FORMAT ( [Date]; "YYYYMMDD" );
"Year"; YEAR ( [Date] );
"Monthnumber"; FORMAT ( [Date]; "MM" );
"YearMonthnumber"; FORMAT ( [Date]; "YYYY/MM" );
"YearMonthShort"; FORMAT ( [Date]; "YYYY/mmm" );
"MonthNameShort"; FORMAT ( [Date]; "mmm" );
"MonthNameLong"; FORMAT ( [Date]; "mmmm" );
"DayOfWeekNumber"; WEEKDAY ( [Date] );
"DayOfWeek"; FORMAT ( [Date]; "dddd" );
"DayOfWeekShort"; FORMAT ( [Date]; "ddd" );
"Quarter"; "Q" & FORMAT ( [Date]; "Q" );
"YearQuarter"; FORMAT ( [Date]; "YYYY" ) & "/Q" & FORMAT ( [Date]; "Q" )
)
将日期表标记为日期表 将源列中的第四季替换为季度的第一个日期。 在两个表之间创建关系。