MDX學習 初始MDX

2022-02-12 09:01:43 字數 2009 閱讀 3898

認識mdx

1, as 2005 cube結構

在認識mdx之前先來認識下as 2005 cube結構。如下圖,cube的結構裡有維度和量值,而維度下有階層(屬性),階層下有層級,每個層級有許多成員。

多維表示式(multidimensional expressions,mdx),是以陳述式為基礎的指令碼語言,用來在ssas中定義、使用和擷取多維體內的資料。

3,mdx多維查詢語法

mdx語法

with

[<

匯出成員

>]

[<

自定義命名

] [<

單元格計

] select

on<

[,on

<

…] from

[名]

where

[切]

匯出成員語法

member

成員名

as'<

計算公式

>'

[,solve_order = 解決順

] [,= ]

[,format_string = <

顯示格式

>]

命名集語法

set<

集合名稱

> as '<

成員集合

>'

單元格計算語法

cell

calculation

<

單元格名稱

>

for '()'

as ''

[,]

1)新增匯出成員示例

with

--新增

匯出成員

member

[measures].[

達成率] as

'[measures].[sales amount]/[measures].[sales amount quota]'

,format_string='percent' --

顯示百分比

--新增

匯出成員

member

[measures].[

去年同期達¦¨率

] as

'(parallelperiod([date].[calendar].[calendar year]),[measures].[

達成率])'

,format_string='percent' --

顯示百分比

select on 0,

on 1

from [adventure works]

where [date].[calendar].[calendar year].&[2004];

2)新增命名集示例

with

--自訂命名集

產品名稱開頭

為ml的所有產品

set ml as

filter([product].[product].[product].members,

mid([product].[product].currentmember.name,1,2)='ml')

select on 0,

nonempty

--null不顯示

,注釋測試

on 1

from [adventure works];

3)單元個計算示例

with

cell

calculation [cells]

for ''

as '1'

select

on 0,

on 1

from [adventure works]

MDX常用函式

mdx支援的主要函式 注意 1.紅色表示常用函式。2.詳細用法和功能介紹見 函式名功能 成員函式 ancestor level,member ancestor level,numeric 返回指定級別或指定距離上成員的祖先。closingperiod level,member 返回成員在指定級別上的...

基本 MDX 查詢

基本查詢,那就是select嘍 1 指定結果集 就是你要查詢什麼樣的資料 1.mdx 的基本結構 mdx 的基本結構有三種 members,tuple 和 set 2.members 指的是維度樹上的乙個節點,這裡有一點需要指出,量度也是乙個特殊的維度,所以對於普通維度上的 member 可以有幾下...

MDX 量值分值排序

注 根據算出來的動銷率,分為暢銷和滯銷,然後分別排出暢銷的動銷率名次 和 滯銷的動銷率名次 mdx 如下 with member measures 淨出量 as measures 倉庫出貨數量 measures 倉庫收退貨數量 member measures 動銷率 as iif measures ...