Ssas 在MDX表达式中,按名称而不是ID引用成员
在谷歌搜索失败后,我决定提问并回答这个问题。对于像我这样的一些SQL DBA来说,处理MDX不是一个日常事务,而是一件“偶尔”的事情。所以,当一个看似简单的问题出现时,有一个简单的答案是很好的 “在MDX查询中,如何通过名称(而不是ID或标识符)引用成员?”例如,在strotmember或strotset函数中,或在WHERE子句行(切片器)(不要与SQL WHERE子句混淆!)) 范例-- 维度层次结构:Ssas 在MDX表达式中,按名称而不是ID引用成员,ssas,mdx,Ssas,Mdx,在谷歌搜索失败后,我决定提问并回答这个问题。对于像我这样的一些SQL DBA来说,处理MDX不是一个日常事务,而是一件“偶尔”的事情。所以,当一个看似简单的问题出现时,有一个简单的答案是很好的 “在MDX查询中,如何通过名称(而不是ID或标识符)引用成员?”例如,在strotmember或strotset函数中,或在WHERE子句行(切片器)(不要与SQL WHERE子句混淆!)) 范例-- 维度层次结构:[Family hierarchy] 所述层次结构中的维度,从上到下:父级,子级 每个维度
[Family hierarchy]
所述层次结构中的维度,从上到下:父级
,子级
每个维度的成员包括(ID,“名称”):
家长
成员:
- 1“妈妈”
- 2,“流行音乐”
子成员
成员:
- 3、“兄弟”
- 4,“Sis”
Child
成员“Bro”进行切片,我将在WHERE子句中使用以下表达式:
[Family Hierarchy].[Child].&[3]
但我不想让我的报告层知道/关心该ID是什么。我想使用名称“兄弟”。如何执行此操作?只需从表达式的最后一个元素中删除符号并使用名称:
[Family Hierarchy].[Child].[Bro]
或者在SSMS中的
strotmember
用法中,strotmember('[Family Hierarchy].[Child].[Bro]')
如果连接到SSAS,然后在将成员拖动到脚本窗口时打开一个新的MDX脚本,它将为您提供名称?是的,如果将鼠标悬停在多维数据集浏览器窗格中的成员上,它将同时显示ID和名称。需要注意的一点是,在客户端中,使用密钥版本有时会很有用,这使您可以自由选择,如果将来更改标题名称,您的应用程序仍然可以正常工作