我是MDX表达式和查询的新手,我目前正在寻找类似的东西 -
我有两个日期'Date1
'&事实表中的“Date2
”作为DATE维度的外键。我需要做count of rows where Date1 < Date 2
,并考虑到我不想算NULLS。我写了一个像这样的表达式 -
WITH MEMBER [Measures].[RecordCount] AS
COUNT(FILTER([Measures].[RecordCount], IIF([Date1].[Date] <= [Date2].[Date],0,1)=1))
SELECT [Measures].[RecordCount] ON 0
FROM [MYCUBE]
以上查询运行正常,但计数结果不正确。我在事实表中创建了7行,其中Date1小于Date2,但我仍然将计数收到0。
感谢任何帮助。 (任何参考站点对未来都会有好处)
谢谢, 维尼特 vineet9860@gmail.com
答案 0 :(得分:2)
您无法在MDX中轻松完成此操作,[RecordCount]度量将在您对日期进行比较之前进行汇总,因此您永远无法获得有效值。
您最好在DSV中创建一个类似
的命名计算CASE WHEN Date1 < Date2 THEN 1 ELSE NULL END
然后在您的多维数据集中创建一个度量来总结这个新列。