Ssas 如何使用MDX获得唯一的度量?

Ssas 如何使用MDX获得唯一的度量?,ssas,mdx,olap,olap-cube,Ssas,Mdx,Olap,Olap Cube,我有一个非常规的多维数据集,它有一个称为“RowNumber”的一维和五个称为“Col0”、“Col1”等的度量值。多维数据集的每个坐标都加载了字符串值,例如“Value14”或“Value3” 在每个度量中都会有相同字符串值的重复,因此如果我执行 SELECT [Measures].[Col2] ON 0, [RowNumber].[Row10]:[RowNumber].[Row14] ON 1 FROM [myCube] 我得到以下结果: Col2 Row10 Valu

我有一个非常规的多维数据集,它有一个称为“RowNumber”的一维和五个称为“Col0”、“Col1”等的度量值。多维数据集的每个坐标都加载了字符串值,例如“Value14”或“Value3”

在每个度量中都会有相同字符串值的重复,因此如果我执行

SELECT [Measures].[Col2] ON 0, [RowNumber].[Row10]:[RowNumber].[Row14] ON 1 FROM [myCube]
我得到以下结果:

        Col2
Row10   Value5
Row11   Value0
Row12   Value0
Row13   Value19
Row14   Value6
您可以在上表中看到,有两个Value0条目。我只想从所有Col2中获得唯一的值,不管行数是多少,如下所示:

Col2 
Value5 
Value0 
Value19 
Value6
我知道这是对立方体的一种非常规使用,所以这可能是不可能的。然而,从一个度量中获得唯一的值似乎不是不可能的,所以我希望有一种方法可以做到这一点


提前感谢。

MDX并不是专门为这种事情设计的。但有可能:

With
Set [OrderedRows] as 
Order(NonEmpty([RowNumber].[Row10]:[RowNumber].[Row14],[Measures].[Col2]),[Measures].[Col2])

Member [Measures].[Rank] as 
Rank([RowNumber].[RowNumber].CurrentMember, [OrderedRows])

Member [Measures].[Col2Unique] as 
IIF(
    ([OrderedRows].Item([Measures].[Rank] - 2),[Measures].[Col2]) = [Measures].[Col2],
    NULL,
    [Measures].[Col2]
)

Select {[Measures].[Col2],[Measures].[Col2Unique]} on 0,
Non Empty [OrderedRows] on 1
From [myCube]

Analysis Services多维或表格?您可以更改多维数据集吗?你能用col2构建一个维度吗?你肯定应该改变你的立方体,并为col2添加一个维度,正如GregGalloway所建议的那样