EXCEPT (MDX)
2 つのセットを検証し、最初のセットの要素で構成されるセットを返します。ただし、2 番目のセットにもある要素があれば除外します。この関数は、オプションで、そのセット内にある重複を削除します。
返りタイプ
この関数は、セットを返します。
構文および詳細
EXCEPT(set_expression1, set_expression2, ALL)
EXCEPT(set_expression1, set_expression2)
-
set_expression1 および set_expression2 は、セットに対して評価される式です。
-
オプションのキーワード ALL が含まれている場合、これは、すべての重複を保持することを指定します。既定では、最初のセットに、重複する要素が含まれている場合、それらのうち最初の要素のみが含まれます。
set_expression1 にない要素が set_expression2 に含まれている場合、それらの要素は無視されます。返されたセットには、set_expression1 の要素のみが含まれます。
例
2 つの名前付きセットを定義する以下のクエリを考えてみます。
WITH SET set1 AS '{allerd.eggs,allerd.eggs,allerd.soy,allerd.wheat}'
SET set2 AS '{allerd.[diary products],allerd.pollen,allerd.wheat}'
SELECT MEASURES.[%COUNT] ON 0, EXCEPT(set1,set2) ON 1 FROM patients
Patient Count
1 eggs 451
2 soy 462
このクエリは、set1 のメンバのうち、set2 にはないメンバを示します。メンバ allerd.eggs は、set1 内に 2 回リストされていますが、結果には 1 回しか表示されていません。
一方、以下のバリエーションでは ALL キーワードを使用しています。
WITH SET set1 AS '{allerd.eggs,allerd.eggs,allerd.soy,allerd.wheat}'
SET set2 AS '{allerd.[diary products],allerd.pollen,allerd.wheat}'
SELECT MEASURES.[%COUNT] ON 0, EXCEPT(set1,set2,ALL) ON 1 FROM patients
Patient Count
1 eggs 451
2 eggs 451
3 soy 462