MDX查询/表达无法正常工作

时间:2009-02-09 17:40:53

标签: mdx

我是MDX表达式和查询的新手,我目前正在寻找类似的东西 -

我有两个日期'Date1'&amp;事实表中的“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

1 个答案:

答案 0 :(得分:2)

您无法在MDX中轻松完成此操作,[RecordCount]度量将在您对日期进行比较之前进行汇总,因此您永远无法获得有效值。

您最好在DSV中创建一个类似

的命名计算
CASE WHEN Date1 < Date2 THEN 1 ELSE NULL END

然后在您的多维数据集中创建一个度量来总结这个新列。