使用报表服务中的筛选器构建分析服务查询(MDX)

时间:2011-09-13 08:19:33

标签: ssas mdx

我在报告服务中构建MDX查询时遇到问题。我已经在互联网上搜索了很多关于它的信息,尽管得到了明确的MDX查询示例以及如何构建它,但我总是遇到语法错误。所以这就是事情:

我想做的很简单。我想过滤数据,只包括在相应的列和参数中具有相同值的行。查询构建器生成的原始查询是:

SELECT NON EMPTY { [Measures].[Value] } ON COLUMNS,
 NON EMPTY { 
([Net Object Hierarchy].[Central Telecom Center].[Central Telecom Center].ALLMEMBERS * 
[Net Object Hierarchy].[Province].[Province].ALLMEMBERS * 
[Net Object Hierarchy].[County].[County].ALLMEMBERS * 
[Net Object Hierarchy].[District].[District].ALLMEMBERS * 
[Net Object Hierarchy].[Rural].[Rural].ALLMEMBERS * 
[Net Object Hierarchy].[Village].[Village].ALLMEMBERS * 
[Net Object Hierarchy].[Telecom Center].[Telecom Center].ALLMEMBERS * 
[Net Object Hierarchy].[Switch].[Switch].ALLMEMBERS * 
[Net Object Hierarchy].[Prefix].[Prefix].ALLMEMBERS * 
[Measure].[Measure ID].[Measure ID].ALLMEMBERS * 
DESCENDANTS([Date To].[Parent Date Key].[Level 02].ALLMEMBERS) ) } ON ROWS 
FROM [Irtel Planning Statistics]

过滤数据的参数包括:“paramCentralTelecomCenter”,“paramProvince”,“paramCounty”,“paramDistrict”,...,“paramPrefix”。

例如,如果参数paramProvince的值设置为“CA”,我只需要检索具有[Net Object Hierarchy]值的那些记录。[省]。[省] =“CA”。这应该很简单,但我完全迷失了。

有人可以帮我吗?提前谢谢。

1 个答案:

答案 0 :(得分:0)

您需要在SELECT中使用WHERE子句。这是在FROM之后的结尾。

例如,以下内容会将您的查询限制为省份设置为“CA”的元素:

WHERE [Net Object Hierarchy].[Province].[Province].[CA]