什麼是MDX

來源:互聯網
上載者:User

什麼是MDX?
多維度運算式MDX (MultiDimensional Expression)是為訪問Analysis
Services多維度結構資料Cube所開發出來的語言。 功能非常強大,可用於定義Analysis Services
計算和安全規則。如同訪問關聯式資料庫必須使用SQL
語言一樣,訪問Cube這種多維分析結構,就必須使用MDX語言。MDX在文法上與SQL很相似,但它卻具備處理一個線上處理過程(OLAP)立體中多維
資料的更好功能。對於絕大多數的通用任務,你都可以使用MDX來擷取一個立體中的資訊。MDX
提供了新的指令碼功能、屬性階層、自動共存功能、子Cube操作、新的資料定義和資料動作陳述式以及新的函數和運算子。

簡化資訊的不同類型被稱為維數(dimensions),通過多維簡化大量資料的資料結構被稱為一個立體(cube),簡化資訊被稱為量度(measure)。任何一個立體都有一個或多個維數和量度。

基本文法
針對 DB2 Alphablox 立方體執行的 MDX 查詢的基本文法如下所示:

SELECT {axisSpecification} ON COLUMNS,
{axisSpecification} ON ROWS
FROM cubeName
WHERE (slicerItems)
其中:axisSpecification 是一個或多個元組的集合。可以以列表形式輸入元組,也可以通過            CrossJoin 函數來“產生”元組。
cubeName 是已定義的 Alphablox 立方體的名稱。
slicerItems 是一個元組(通常是用逗號分隔的成員列表),將對這個元組過濾查詢結果集。如果有多個切片成員,則每個成員必須來自不同的維,並且不能在查詢中指定的任何軸中引用該維。

SELECT
  [Store].[Store Country].[USA].Children ON COLUMNS,
  [Product].[All Products].[Food].Children ON ROWS
  FROM [Sales]
  WHERE ([Measures].[Unit Sales])
在這種情況下,有兩種axis規則,其中一個為輸出的縱數,另一個為輸出的行數。每一種規則都指定了維數的一部分。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.