多維度表達式 (MDX) 會使用 DRILLTHROUGH語句,從 Cube 數據格的源數據擷取數據列集。
為了在資料立方體上執行 DRILLTHROUGH 語句,必須為該資料立方體定義鑽取動作。 若要定義鑽研動作,請在 SQL Server Data Tools (SSDT),在 Cube 設計師的 [ 動作 ] 窗格的工具列上,按兩下 [ 新增鑽研動作]。 在新的鑽取動作中,指定動作名稱、目標、條件以及透過DRILLTHROUGH語句傳回的欄位。
DRILLTHROUGH 語句語法
語句 DRILLTHROUGH 會使用下列語法:
<drillthrough> ::= DRILLTHROUGH [<Max_Rows>] [<First_Rowset>] <MDX select> [<Return_Columns>]
< Max_Rows> ::= MAXROWS <positive number>
<First_Rowset> ::= FIRSTROWSET <positive number>
<Return_Columns> ::= RETURN <member or attribute> [, <member or attribute>]
子 SELECT 句會識別包含要擷取之源數據的 Cube 單元格。 這個 SELECT 子句與一般 MDX SELECT 語句相同,不同之處在於子句中 SELECT 每個軸上只能指定一個成員。 如果在軸上指定了一個以上的成員,就會發生錯誤。
語法 <Max_Rows> 會指定每個傳回數據列集中的數據列數目上限。 若連接至資料來源的 OLE DB 提供者不支援 DBPROP_MAXROWS,則會忽略 <Max_Rows> 設定。
語法 <First_Rowset> 會識別先傳回數據列集的數據分割。
語法 <Return_Columns> 會識別要傳回的基礎資料庫數據行。
DRILLTHROUGH 語句範例
下列範例示範 語句的使用 DRILLTHROUGH 。 在此範例中,DRILLTHROUGH 語句會沿著 Stores 維度(交叉分析篩選器軸)查詢 Store、Product 和 Time 維度的分葉,然後傳回部門量值群組、部門標識符和員工的名字。
DRILLTHROUGH
Select {Leaves(Store), Leaves(Product), Leaves(Time),*} on 0
From Stores
RETURN [Department MeasureGroup].[Department Id], [Employee].[First Name]