我有以下 MDX:
SELECT NON EMPTY
{
[Measures].[My Measure]
} ON COLUMNS
FROM
(
SELECT
NONEMPTY(StrToMember(@StartDate,CONSTRAINED):StrToMember(@EndDate,CONSTRAINED))
ON COLUMNS,
NONEMPTY( STRTOSET(@Division))
ON ROWS
FROM
(
SELECT
NONEMPTY({[Project].[Project Status].&[Open],[Project].[Project Status].&[Closed]})
ON COLUMNS,
NONEMPTY(STRTOSET(@TargetLanguage))
ON ROWS
FROM [My Cube]
)
WHERE STRTOSET(@Project)
)
WHERE STRTOSET(@Requestor)
我的目标如下: 过滤@StartDate、@EndDate、@Division、@TargetLanguage、@Project、@Requestor(除了过滤项目状态以打开/关闭...)
他们唯一能让这些工作的方法是玩弄子立方体和轴,直到我得到一个正确的结果......例如,我不明白为什么,在第二个子选择中,我不能简单地说:
Where STRTOSET(@TargetLanguage)
而不是把它放在行上。我不能 100% 确定这是否返回了正确的数据,因为它是如此令人费解……有什么解释吗?到目前为止,谷歌一直没有帮助,这让我相信将事物放在子立方体中的行上并不是正确的解决方案......
谢谢!