首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SSAS -顶部或底部之和

SSAS -顶部或底部之和
EN

Stack Overflow用户
提问于 2012-04-13 13:40:56
回答 1查看 870关注 0票数 0
代码语言:javascript
复制
SELECT  
  [Measures].[Internet Sales Amount] ON COLUMNS  
 ,Tail  
  (  
    [Date].[Calendar Year].[Calendar Year].MEMBERS  
   ,2  
  ) ON ROWS  
FROM [Adventure Works];  

上面的MDX查询为我提供了如下输出:

年互联网销售额 CY 2003 $9,791,00.30 2004年欧洲共同体9,770,899.74美元

我理解这个查询是如何工作的,但是我想要在一个立方体中创建计算的度量,它总是给我最后两年的和。怎么做?我是SSAS的新手。我擅长设计简单的度量和尺寸,但当涉及到使用MDX时,我大部分时间都被困住了。

PS:我试过使用TopCount、BottomCount等,但这里我想按“年份”订购,这是一个维度。

任何帮助都将不胜感激。

谢谢,

帕里

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-13 15:14:10

以下查询计算日期维度最后两年的总和的度量值:

代码语言:javascript
复制
WITH
MEMBER [Measures].[Sales from the last 2 Years]
    AS Aggregate( Tail( [Date].[Calendar Year].[Calendar Year].Members, 2)
                , [Measures].[Internet Sales Amount]
                )

SELECT { [Measures].[Sales from the last 2 Years]
       } ON COLUMNS
     , { Tail( [Date].[Calendar Year].[Calendar Year].Members, 2)
       } ON ROWS
    FROM [Adventure Works]

另一个令人感兴趣的问题是为每年及其以前的总和计算一项度量:

代码语言:javascript
复制
WITH
MEMBER [Measures].[Sales from 2 years]
    AS Aggregate( { [Date].[Calendar Year].CurrentMember.PrevMember
                  : [Date].[Calendar Year].CurrentMember }
                , [Measures].[Internet Sales Amount]
                )

SELECT { [Measures].[Internet Sales Amount]
       , [Measures].[Sales from 2 years]
       } ON COLUMNS
     , NON EMPTY
       { [Date].[Calendar Year].[Calendar Year]
       } ON ROWS
    FROM [Adventure Works]

它做一个求和,因为度量[Measures].[Internet Sales Amount]的聚合类型是Sum,而Aggregate函数根据度量的聚合类型进行聚合。

  • MDX中的关键概念
  • 聚合函数参考

MDX是一个很难理解的话题;如果您要开始工作,我建议您阅读“MDX解决方案,第二版”一书。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10141966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档