Intersect (MDX)
指定された 2 つのセットの積集合を返します。重複部分を保持することも可能です。
構文
Intersect(Set_Expression1 , Set_Expression2 [ , ALL ] )
引数
Set_Expression1
セットを返す有効な多次元式 (MDX) 式です。Set_Expression2
セットを返す有効な多次元式 (MDX) 式です。
説明
Intersect 関数は、2 つのセットの積集合を返します。 既定では、両方のセットの重複部分を削除してから積集合を取得します。 指定された 2 つのセットの次元は同一である必要があります。
オプションの ALL フラグを指定すると、重複するメンバーを保持できます。 ALL が指定された場合、Intersect 関数は、重複していない要素どうしの積集合を通常どおりに取得したうえで、1 番目のセットと 2 番目のセットで重複する要素について積集合を取得します。 指定された 2 つのセットの次元は同一である必要があります。
例
次のクエリは 2003 年と 2004 年を返します。2 つのメンバーは指定された両方のセットに示されます。
SELECT
INTERSECT(
{[Date].[Calendar Year].&[2001], [Date].[Calendar Year].&[2002],[Date].[Calendar Year].&[2003]}
, {[Date].[Calendar Year].&[2002],[Date].[Calendar Year].&[2003], [Date].[Calendar Year].&[2004]})
ON 0
FROM
[Adventure Works]
次のクエリは、指定された 2 つのセットには異なる階層のメンバーが含まれているので失敗します。
SELECT
INTERSECT(
{[Date].[Calendar Year].&[2001]}
, {[Customer].[City].&[Abingdon]&[ENG]})
ON 0
FROM
[Adventure Works]