Except

EssbaseのMDX Except関数は、2つのセットの差が含まれるサブセットを返し、オプションで重複を保持します。2つの入力セットは同じディメンションである必要があります。

構文

Except ( set1, set2 [,ALL] )

パラメータ

set1

set2と比較するセット。

set2

set1と比較するセット。

ALL

オプションのALLフラグを使用すると、重複が保持されます。set1set2が一致する重複は削除されます。

Except( {[New York], [California], [Florida], [California]},
        {[Oregon], [Washington], [California], [Florida]})

{[New York]}を返します。

Except( {[New York], [California], [Florida], [California]},
        {[Oregon], [Washington], [California], [Florida]}, ALL)

{[New York], [California]}を返します。

次の問合せは、"Major Market"として定義されていないレベル0マーケットのActual SalesとProfitの数値を返します。

SELECT
 {[Measures].[Sales], [Measures].[Profit]} 
ON COLUMNS,
 Except(
   [Market].Levels(0).Members, 
   UDA (Market, "Major Market")
 ) ON ROWS
FROM Sample.Basic
WHERE {([Year].[Qtr1], [Scenario].[Actual])}

この問合せが返すグリッドは次のとおりです。

表4-61 MDX例からの出力グリッド

(軸) Sales Profit
Connecticut 3472 920
New Hampshire 1652 202
Oregon 5058 1277
Washington 4835 1212
Utah 4209 744
Nevada 6516 775
Oklahoma 2961 718
Louisiana 2906 773
New Mexico 1741 4
Wisconsin 4073 913
Missouri 3062 399
Iowa 6175 2036