我是一个 SSAS 新手,我正在尝试查询一个多维数据集以根据按日期排序的 aome 度量组检索数据。我希望在查询中指定的日期范围。我正在使用的查询是这样的:-
SELECT
{
[措施].[措施1],
[措施].[措施2],
[措施].[措施3]
}
在专栏上,
非空{
[日期].[所有成员]
}
在行
FROM (SELECT ( STRTOMEMBER('2/23/2013', CONSTRAINED) :
STRTOMEMBER('3/1/2013', CONSTRAINED) ) 在列上
来自 [MyCube])
但是它给了我以下错误
查询 (10, 16) 违反了 STRTOMEMBER 函数中 CONSTRAINED 标志施加的限制。
我尝试删除 constrained 关键字,然后删除 strtomember 函数。但在每种情况下我分别得到以下错误
Query (10, 16) STRTOMEMBER 函数需要 1 个参数的成员表达式。使用了字符串或数字表达式。
和
*Query (10, 14) : 函数需要 1 个参数的成员表达式。使用了字符串或数字表达式。
*
我可以从最后两个错误中了解到我需要包含约束关键字。但是谁能告诉我为什么这个查询不会执行?
最佳答案
作为成员表达式传递的字符串必须是完全限定的成员名称,或者解析为一个。使用与 SELECT 中相同的格式。
例如:
STRTOMEMBER('[Date].[2/23/2013]', CONSTRAINED)
编辑:我刚刚注意到您的范围选择语法看起来不对——您需要使用 {...}
,而不是 (...)
。
SELECT {
STRTOMEMBER('2/23/2013', CONSTRAINED) :
STRTOMEMBER('3/1/2013', CONSTRAINED) }
关于sql-server-2008-r2 - MDX 查询不接受日期值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15176833/