我正在尝试弄清楚如何通过 SSAS/MDX 获取维度中的数据。示例:
DIMFileStatus
--------------
FileStatusID, FileStatusName
1 New
2 Updated
3 Deleted
如果我运行一个简单的查询,例如:
SELECT [DimFileStatuses].[FileStatusName].members ON 0
FROM [status]
我得到以下信息:
All New Updated Deleted
--------------------------
1 1 1 1
我想要的是:
FileStatusID FileStatusName
1 New
2 Updated
3 Deleted
如何构造查询以获得我想要的格式的结果? 谢谢!
更多信息:
如果我尝试创建自定义度量:
WITH MEMBER Measures.[custom] AS [DimFileStatuses].[FileStatusID].CURRENTMEMBER.MEMBERVALUE
SELECT [DimFileStatuses].[FileStatusName].members on 1,
[Measures].[custom] ON 0
FROM [status]
我得到:
custom
--------------
all (null)
New (null)
Updated (null)
Deleted (null)
最佳答案
你可以使用
SELECT {}
ON COLUMNS,
[DimFileStatuses].[FileStatusID].[FileStatusID].Members
*
[DimFileStatuses].[FileStatusName].[FileStatusName].Members
ON ROWS
FROM [status]
使用像属性名称那样命名的级别会排除所有成员,并且 Analysis Services 的 Autoexists 功能应注意返回的 FileStatusID
和 FileStatusName
的所有组合由交叉连接实际存在于维度表中。这避免了像 (1, Updated)
这样的对。
关于ssas - 从SSAS中选择维度表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22332501/