有關比較分析的MDX

來源:互聯網
上載者:User

所有的例子中:month參數指向月粒度、year參數指向年粒度。日期階層為:年、季度、月、日

1. 去年同期:即查詢月為200905的話,該指標為200805該指標
total([金額] within set parallelPeriod([日期].[日期階層].[年],1,[日期].[日期階層].[月]->?mon?))
2. 本年累計:即查詢月為200905的話,該指標為200901-200905期間發生
total([金額] within set periodsToDate([日期].[日期階層].[年],[日期].[日期階層].[月]->?mon?))

3.  去年同期止累計:即查詢月為200905的話,該指標為200801-200805期間發生
total([金額] within set periodsToDate([日期].[日期階層].[年],parallelPeriod([日期].[日期階層].[年],1,[日期].[日期階層].[月]->?mon?)))
同比增長  (以日期為行維)
([銷售金額]- value(tuple(parallelPeriod([ARPD-Sale].[日期].[日期].[年]),[銷售金額])))/ value(tuple(parallelPeriod([ARPD-Sale].[日期].[日期].[年]),[銷售金額]))
環比增長   (以日期為行維)
([銷售金額]-value(tuple(prevMember(currentMember([ARPD-Sale].[日期].[日期])),[銷售金額])))/value(tuple(prevMember(currentMember([ARPD-Sale].[日期].[日期])),[銷售金額]))4. 有史以來累計發生:查詢月為200805,則為從時間第一個節點截止200805期間發生

1)如果提示使用的是[日期].[日期階層].[月].[月 - Key]
   total([金額] within set
        filter(
             members([日期].[日期階層].[月]),
             [日期].[日期階層].[月].[月 - Key]<=?month?
              ))

2)如果提示使用的是[日期].[日期階層].[月]
    total([金額] within set
        lastperiods(1000,[日期].[日期階層].[月]->?month?))5. 查詢粒度為年,統計上半年、下半年
上半年餘額(即時點類指標):
total([餘額] within set subset(descendants([日期].[日期階層].[年]->?year?,[日期].[日期階層].[月]),5,1))
上半年發生額(即時段類指標):
total([金額] within set subset(descendants([日期].[日期階層].[年]->?year?,[日期].[日期階層].[月]),0,6))

這裡subset()這個函數和substring()類似,只不過subset截取的是一個set(集合)中的某些成員而已,並且注意subset()第一個是0而不是1,這個和數組是類似的.

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.