【问题标题】:Getting collation of SSAS cube with MDX使用 MDX 对 SSAS 多维数据集进行排序
【发布时间】:2017-11-07 20:38:42
【问题描述】:
【问题讨论】:
标签:
sql-server
tsql
ssas
collation
【解决方案1】:
我不是 MDX 专家,但不要认为您不能为此使用 MDX。我已经使用 PowerShell 和分析管理对象 (AMO) 完成了这种事情。 This article 是一个很好的参考。我无法对此进行测试,但 Powershell cmdlett 脚本将如下所示:
PS C:\AMOScripts> $database.collation
【解决方案2】:
可以通过进行一些字母比较的查询来间接完成:
WITH MEMBER [Measures].[IsAccentSensitive] AS 'a'<>'á'
MEMBER[Measures].[IsCaseSensitive] AS 'a'<>'A'
MEMBER[Measures].[IsBinary] AS 'A'<'_' AND '_'<'a'
SELECT { [Measures].[IsAccentSensitive],[Measures].[IsCaseSensitive],[Measures].[IsBinary] } ON 0 FROM CubeName
IsBinary 为真将胜过 IsAccentSensitive 和 IsCaseSensitive 为真。
二进制测试'_'<'a'是因为'_'在ASCII中的大小写字母之间。