我是MDX的新手。我知道MDX是一種查詢語言,而不是數據轉換語言。但是,我也知道這種區別是部分無意義的;轉換和報表之間沒有明確的界限,每個查詢語言都有一定的轉換能力。精通查詢語言需要知道哪些轉換是合理的,哪些轉換需要重新設計基礎模式。在MDX中可以執行哪些轉換?
從我看到的MDX中,它顯然具有用於在維度內創建計算成員的功能。除此之外,我不清楚它的轉換能力。任何人都可以提供關於MDX可以合理預期執行哪些類型的轉換的簡明摘要?
我不打算將此問題限制在我的特定報告挑戰中。但是,通過描述我的項目,我可以舉例說明一些我感興趣的轉換類型。因此,以下是我正在處理的轉換類型的描述:
我需要使用MDX創建一些庫存和銷售報告。我正在使用Microsoft SQL Server 2008 Analysis Services。數據分爲三個不同的立方體:現有庫存,過境庫存和銷售。我的報告要求以多種方式轉換數據。例如:
1)我需要使用4-4-5日曆的規則從「Weeks」屬性中推斷「Months」屬性。我相當肯定這可以用MDX來優雅地完成。
2)我需要從「Months」屬性推斷「日曆月」維度。我相信這可以通過MDX來完成,但我不確定是否有一個優雅的解決方案或一個應該避免重新設計模式的kludge。
3)我需要從「倉庫」維度中推斷「區域」維度。我沒有看到證據表明這可以通過MDX以優雅的方式完成。
4)我需要將總庫存計算爲現有庫存加運輸庫存。從搜索網頁看來,查詢兩個不同的立方體似乎是可能的,但不鼓勵有利於模式重新設計,但水仍然非常泥濘。