2011-02-15 108 views
3

嗨我一直在玩MDX,需要一些非常高級的入門類型指導。我已經安裝了一個SQL-Server 2008 R2數據庫並運行其中的數據。我想在MDX中嘗試一些非常簡單的操作來熟悉流程。我不是DW或Cube專家,所以我需要慢慢開始。 (事實/尺寸對我來說是新的)如何開始使用MDX

我有一個關係數據庫的視圖,我想用它作爲MDX的單一來源。原因很簡單:

TABLE WEEKLY_GAIN 
    PCTGAIN (DECIMAL) -- The pre-calc'd pctg gain in price from day x to day x+1 
    DATE (DATE)  -- The date the stock pctgain was generated 
    WEEK(INT)   -- Contiguous/Consecutive integer that is keyed to the last trading day of each week. 
    YEAR (INT)  -- The year of the current PCTGAIN from the DATE column 

樣本數據:

PCTGAIN   DATE   WEEK YEAR 
0.01709791  2011-01-14  2  2011 
0.01102063  2011-01-07  1  2011 
0.0006922469  2010-12-31  52  2010 
0.01033836  2010-12-23  51  2010 

我想用MDX生成一個立方體和某些功能(中值,平均值,STDEV,等等)。我已成功將上述視圖標識爲MDX中的源代碼。不過,我需要幫助定義(MDX)維,鍵,多維數據集定義以及其他需要完成的操作等。

我相信這應該是直接的(日期,周,年是尺寸?)但我不確定。

我想生成的一個「Cube」是......所有這些年份(1950-2011)都是行,所有的周(1-52)都是列,然後生成一些MIN,MAX,MED,在所有年份中,每週的PCTGAIN總數。我承認有辦法用T-SQL來做到這一點。但是,我希望在MDX中做到這一點,以便讓MDX的設置變得更加高效,並使其更具生產力。

我很高興根據需要提供更多詳細信息。由於

回答

4

有在這個問題在這裏學習MDX一些很好的資源:How to learn MDX

有了您的最後一個例子是通常更容易與行的工作,而不是你的月經列,所以我會建議UNPIVOTing你的表,每週都是一行,然後用適當的級別構建日期維度。一旦完成,您將能夠相對容易地使用MDX函數來計算MIN,MAX,MED,PCTGAIN等。

0

閱讀這本書:

的Microsoft SQL Server 2008 MDX一步一步

是最好的。