【发布时间】:2016-08-03 15:19:15
【问题描述】:
我是 mdx 查询的新手,我想问一下我们如何使用动态 where 子句编写 MDX 查询。例如,我有员工 ID 列表,它将作为逗号分隔值“1,2,3,4”传递给程序。此列表可以包含任何员工 ID。在 mdx 中,我想要一些我们通常在 SQL 查询中使用的 IN 子句。我不想在 MDX Where 子句中给出静态值,例如 {[Member].[Member Key].&[1], [Member].[Member Key].&[2], [Member].[Member密钥].&[3]、[成员].[成员密钥].&[4]}。这件事可以通过动态 where 子句来实现,我可以将任何值传递给 storedprocedure 参数?
谢谢
【问题讨论】:
-
稍微改进一下并分享一些代码。我不知道 MDX,但是使用常规存储过程,您可以发送您的列表,将其解析为参数并创建一个变量。然后将 where 子句编写为变量 @query = 'Select.... where '+@previouslycreatedvariable 然后运行 exec(@query)
-
你在使用 ssrs 吗?
-
不,我正在使用 Ssas。实际上我正在使用 mdx 查询优化我在多维数据集中的 sql 查询