2016-07-05 71 views
0

对于SSRS报告,我试图从一个维度返回一个排序数据的列表以与参数一起使用。MDX - 如何选择一列并对返回的数据进行排序

我的维度是[Radio].[Radio NO].[Radio NO],其中最后一个Radio NO是一个字符串。

我可以找到返回一列而另一个排序的例子,但我不知道如何排序和返回一列。

回答

1

没有看到您的多维数据集的确切结构/查询,你可以探讨,如果你想订购的字母大道,是以下

ORDER(
    [Radio].[Radio NO].[Radio NO].MEMBERS 
    ,[Radio].[Radio NO].CURRENTMEMBER.MEMBER_CAPTION 
    ,BDESC 
) 

如果要通过一项措施在你的立方体订购,然后像下面这样:

ORDER(
    [Radio].[Radio NO].[Radio NO].MEMBERS 
    ,[Measures].[Profit] 
    ,BDESC 
) 

这是可能的,如果你真的需要打SSRS前更改列名,但它有它变为一项措施的缺点:

WITH 
MEMBER [Measures].[thisIsTheNewName] AS 
    [Radio].[Radio NO].CURRENTMEMBER.MEMBER_CAPTION 
SELECT 
{[Measures].[thisIsTheNewName]} ON COLUMNS, 
ORDER(
    [Radio].[Radio NO].[Radio NO].MEMBERS 
    ,[Radio].[Radio NO].CURRENTMEMBER.MEMBER_CAPTION 
    ,BASC 
) On ROWS 
FROM [OurCube]; 
+0

我该如何给返回的列别名或名称?我需要能够引用它的报告参数。 – PabloCruise

+0

不幸的是,如果您正在处理自定义设置,则无法更改列标题:应该很容易在SSRS中执行操作? – whytheq

+0

我继承了这个需要一些改进的报告。我是MDX的新手。拥有数十年的SQL体验。试图围绕MDX包裹我的头 - 对我来说完全陌生。他们可能会允许我用SQL重写,但是我想看看我是否无法在MDX中使用它。 – PabloCruise

0

谢谢whyth!根据你的回答,这里是我想出了那个作品:

SELECT {} ON COLUMNS, 
ORDER(
    [Radio].[Radio NO].[Radio NO].MEMBERS 
    ,[Radio].[Radio NO].CURRENTMEMBER.MEMBER_CAPTION 
    ,BASC 
) On ROWS 
    FROM [OurCube] 
相关问题