NonEmptySubset
EssbaseのMDX NonEmptySubset()関数は、後続の分析取得の前にセットのサイズを減らします。すべてのタプルが空でないと評価される入力セットのサブセットを返します。空でないことのチェックには、オプションの値式を指定できます。
この関数は、空でない組合せのセットが小さいことがわかっている大きなセットに基づく問合せを最適化するのに役立ちます。NonEmptySubsetは、メトリックが存在するセットのサイズを縮小します。たとえば、特定のユニットの子孫の空でないサブセットを要求できます。
構文
NonEmptySubset (set [, value_expression [, dimension...]])
パラメータ
ノート
Value_expressionを使用する場合は、保存されたメンバーまたは単純な式にする必要があります。value_expressionが複雑な式の場合、空でないサブセットの取得は最適化されません。
例
次のMDX問合せは、Units
(パッケージ当たりのアイテム)の観点から下位10個の製品を取得し、そのセットのCrossJoinと[Albany - NY]
のレベル0メンバー(郵便番号)を返します。
WITH SET Bottom_10
AS '
BottomCount(
Leaves(Products),
10,
Units
)
'
SELECT
{Units}
ON COLUMNS,
NonEmptySubset(CrossJoin(Bottom_10, Leaves([Albany - NY])))
ON ROWS
FROM Asosamp.Basic
前述の問合せは、次の出力を返します:
表4-118 MDX例からの出力グリッド
(軸) | 単位 |
---|---|
Digital Cameras,12201 | 4 |
Camcorders,12201 | 3 |
Photo Printers, 12201 | 2 |
Digital Recorders, 12201 | 2 |
Desktops,12201 | 3 |
Digital Cameras,12212 | 5 |
Camcorders,12212 | 2 |
Photo Printers, 12212 | 3 |
Flat Panel, 12212 | 1 |
HDTV,12212 | 1 |
Home Theater, 12212 | 1 |
Desktops, 12212 | 2 |
Notebooks,12212 | 1 |
Digital Cameras,12223 | 1 |
Camcorders,12223 | 1 |
Photo Printers,12223 | 4 |
HTDV,12223 | 1 |
Notebooks,12223 | 1 |
Camcorders,12229 | 4 |
HDTV,12229 | 1 |
Home Theater,12229 | 3 |
Desktops,12229 | 1 |
Digital Cameras,12249 | 2 |
Photo Printers,12249 | 3 |
Projection TVs,12249 | 1 |
HDTV,12249 | 2 |
Home Theater,12249 | 1 |
Digital Recorders,12249 | 1 |
Notebooks,12249 | 1 |
Camcorders,12257 | 2 |
Photo Printers,12257 | 4 |
Projection TVs,12257 | 2 |
HDTV,12257 | 1 |
Home Theater,12257 | 3 |
Digital Recorders,12257 | 1 |