DRILLTHROUGH を使用したソース データの取得 (MDX)

多次元式 (MDX) では、キューブ セルのソース データから行セットを取得するために DRILLTHROUGH ステートメントを使用します。

キューブに対して DRILLTHROUGH ステートメントを実行するには、そのキューブに対するドリルスルー アクションを定義する必要があります。ドリルスルー アクションを定義するには、Business Intelligence Development Studio のキューブ デザイナの [アクション] ペインで、ツール バーの [新しいドリルスルー アクション] をクリックします。新しいドリルスルー アクションでは、アクションの名前、対象、条件を指定し、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 句は、取得対象のソース データが入っているキューブ セルを識別します。この SELECT 句は MDX の通常の SELECT ステートメントとほぼ同じですが、SELECT 句の場合、それぞれの軸上で 1 つのメンバだけを指定できます。1 つの軸で複数のメンバが指定されている場合、エラーが発生します。

構文 <Max_Rows> は、返されるそれぞれの行セットにおける行の最大数を指定します。データ ソースとの接続に使われる OLE DB プロバイダが DBPROP_MAXROWS をサポートしない場合、<Max_Rows> の設定は無視されます。

構文 <First_Rowset> は、どのパーティションの行セットが最初に返されるかを識別します。

構文 <Return_Columns> は、基になるデータベースのどの列が返されるかを識別します。

DRILLTHROUGH ステートメントの例

以下の例は、DRILLTHROUGH ステートメントの使用方法を示しています。この例の DRILLTHROUGH ステートメントは、Stores ディメンション (スライサ軸) 上の Store、Product、Time ディメンションのリーフを照会して、部門メジャー グループ、部門 ID、従業員の名前を返します。

DRILLTHROUGH
Select {Leaves(Store), Leaves(Product), Leaves(Time),*} on 0
From Stores
RETURN [Department MeasureGroup].[Department Id], [Employee].[First Name]

関連項目

その他の技術情報