【问题标题】:How to Order amount by multiple dimensions in MDX?如何在 MDX 中按多个维度订购金额?
【发布时间】:2014-05-13 09:09:33
【问题描述】:

在我的多维数据集中,我有以下度量、维度。

**Measure:**
Amount

**From Customer dimension:**
Busines Unit Number
Business Unit Description
Cust Number
Cust Name

**From Bucket dimension:**
Bucket

我希望 Amount 按所有这些维度/属性排序。

到目前为止,我在MDX 中尝试的是,

SELECT 
NON EMPTY { 

    [Measures].[Amount] 

} ON COLUMNS, 

NON EMPTY { (
ORDER(
    (
    [Dim Customer].[BU].[BU].MEMBERS*
    [Dim Customer].[BU Description].[BU Description].MEMBERS*
    [Dim Customer].[Cust No].[Cust No].ALLMEMBERS*
    [Dim Address].[Customer Name].[Customer Name].ALLMEMBERS
    ),
[Measures].[Amount],
BDESC
)

* 

[Bucket Dim].[Bucket].[Bucket].ALLMEMBERS 
) }  ON ROWS 

FROM [Cube]

我仍然没有得到我想要的正确顺序,而且执行时间也太长了。

【问题讨论】:

  • 你认为ORDER 的第一个参数是什么数据类型?根据文档(msdn.microsoft.com/en-us/library/ms145587.aspx),它应该是一个集合。但是您在括号中传递了一个逗号分隔的集合列表。也许你应该让它成为四个单维集的叉积,即。 e.用* 替换逗号?那至少是一套。
  • 是的,你是对的。我已经完成了同样的工作,现在正在工作。
  • @FrankPl,我们也可以在大括号中使用 ,。这里使用 , & * 有什么区别
  • 多少个集合,用逗号分隔,括号中的所有内容都不是 MDX 规范定义的——据我所知。因此,我不知道 Analysis Services 是如何解释它的,因为我从未真正使用过这种语法。

标签: reporting-services ssrs-2008 ssas mdx ssrs-2008-r2


【解决方案1】:

您可以嵌套ORDER 函数以按条件获取多个订单。

首先应用外部顺序 - 有点违反直觉。

以下内容将按照cust no的值排序,然后是BU的标题,然后是[Measures].[Amount]

SELECT 
  NON EMPTY 
    {[Measures].[Amount]} ON COLUMNS
 ,NON EMPTY 
    {
        Order
        (
          Order
          (
            Order
            (
                [Dim Customer].[BU].[BU].MEMBERS*
                [Dim Customer].[BU Description].[BU Description].MEMBERS*
                [Dim Customer].[Cust No].[Cust No].ALLMEMBERS*
                [Dim Address].[Customer Name].[Customer Name].ALLMEMBERS
             ,[Measures].[Amount]
             ,BDESC
            )
           ,[Dim Customer].[BU].CurrentMember.Member_Caption
           ,BDESC
          )
         ,[Dim Customer].[Cust No].CurrentMember.MemberValue
         ,BDESC
        )
      * 
        [Bucket Dim].[Bucket].[Bucket].ALLMEMBERS
    } ON ROWS
FROM [Cube];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-05
    • 1970-01-01
    • 1970-01-01
    • 2016-06-21
    • 1970-01-01
    • 2021-12-11
    • 2012-11-29
    • 2017-07-11
    相关资源
    最近更新 更多