无法按维度筛选多个时间选择的数据

时间:2014-03-19 06:39:35

标签: filter mdx

我是MDX的新手,我的MDX查询有问题。

计算成员逻辑:

SUM((OPENINGPERIOD([Date].[YQMD].[Year],[Date].[YQMD].[Month].&[2010-12-01T00:00:00]):[Date].[YQMD].Currentmember),[Measures].[Paid Amt])

Mdx Logic EX:

有会员

 [MEASURES].[Received_Amount]
AS
SUM((OPENINGPERIOD([Date].[YQMD].[Year],[Date].[YQMD].[Month].&[2010-12-01T00:00:00]):[Date].[YQMD].Currentmember)
,[Measures].[Paid Amt])
SELECT {[MEASURES].[Received_Amount]} On Columns
,[Date].[YQMD].[Year].members On Rows
From [Financial]

如果我在Rows中选择多个时间段,则查询工作正常。

但是如果在where子句中选择多个句点,则它没有响应。

有会员

 [MEASURES].[Received_Amount]
AS
SUM((OPENINGPERIOD([Date].[YQMD].[Year],[Date].[YQMD].[Month].&[2010-12-01T00:00:00]):    [Date].[YQMD].Currentmember)
,[Measures].[Paid Amt])
SELECT {[MEASURES].[Received_Amount]} On Columns
,[Speciality].[Specialty Name].[Specialty Name].members On Rows
From [Financial]
Where {[Date].[YQMD].[Year].&[2012-01-01T00:00:00],[Date].[YQMD].[Year].&[2013-01-01T00:00:00]}

注意: 它们中的每一个都从数据库中的最小日期到所选时间进行考虑。 此外,还必须根据每个向下钻取维度过滤数据。

如果选择多个时间段,则必须对尺寸应用相同的公式。

请帮助我摆脱这个问题

最诚挚的问候, Nagendra

1 个答案:

答案 0 :(得分:0)

我认为你所描述的问题是" where子句没有响应"是因为CurrentMember在您有多个选择的情况下返回错误,因为没有单个当前成员。有关如何处理此问题的一些方法,请参阅http://sqlblog.com/blogs/mosha/archive/2005/11/18/writing-multiselect-friendly-mdx-calculations.aspxhttp://sqlblog.com/blogs/mosha/archive/2007/01/13/multiselect-friendly-mdx-for-calculations-looking-at-current-coordinate.aspx