ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 使用MDX进行环比查询

使用MDX进行环比查询

原创 Linux操作系统 作者:银河使者 时间:2008-03-08 22:35:51 0 删除 编辑
在报表查询中经常要进行本期和上期比较,比如3月销售额和2月销售额的比较!一般有绝对值和相对值之分,
如 本期增量=本期值-上期值;绝对值
   本期增幅=(本期值-上期值)/本期值;相对值
1:MDX本查询
with member [time2].[本期增量] as '[time2].[所有 time2].[1997].[Q1].[3]-[time2].[所有 time2].[1997].[Q1].[2]'
        member [time2].[本期增幅] as '[time2].[本期增量]/[time2].[所有 time2].[1997].[Q1].[3]'
select
    {[time2].[所有 time2].[1997].[Q1].[3],[time2].[所有 time2].[1997].[Q1].[2],
    [time2].[本期增量],[time2].[本期增幅]} on columns,
   {[Measures].[Store Sales]}on rows
from Sales
3月和2月相比销售量增量和增幅。
备注:1)如果无上期成员,则值为0;
2)MDX提供PrevMember函数表示上一个成员,[所有 time2].[1997].[Q1].[2]可以用[所有 time2].[1997].[Q1].[3].
PrevMember代替。
2:求解顺序
如果生成多个计算成员,某个计算成员使用其它计算成员,则使用SOLVE_ORDER 指明生成顺序
如:
with member [time2].[本期增量] as '[time2].[所有 time2].[1997].[Q1].[3]-[time2].[所有 time2].[1997].[Q1].[2]'
,SOLVE_ORDER = 1,
        member [time2].[本期增幅] as '[time2].[本期增量]/[time2].[所有 time2].[1997].[Q1].[3]'
SOLVE_ORDER = 2

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12921506/viewspace-201762/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2008-02-08

  • 博文量
    174
  • 访问量
    1085625