
GROUP BY 句の拡張機能
GROUP BY CUBE
GROUP BY 句の CUBE 演算子は、データを複数の次元 ( グループ化の式 ) で グループ化することでデータを分析します。CUBE に次元の順序リストを引数 として指定すると、SELECT 文の中で、そのクエリに指定した次元の考えら れるすべての組み合わせの小計を計算し、選択した複数のカラムのすべての値 の組み合わせについての要約を示す結果セットを生成することができます。
CUBE の構文は次のとおりです。
SELECT … [ GROUPING
GROUP BY [ expression [,… ]
CUBE ( expression [,… ] ) ]
GROUPING は、カラム名をパラメータとして受け取り、表
表
CUBE 演算子によって作成された NULL
ローが小計であることを示す NULL
CUBE 演算子によって作成された以外の NULL
格納されていた NULL
CUBE は、同じ階層の一部ではない次元を扱うときに特に威力を発揮します。
SQL 構文の例 | 定義されるセット |
GROUP BY CUBE (A, B, C); | (A, B, C) |
| (A, B) |
| (A, C) |
| (A) |
| (B, C) |
| (B) |
| (C) |
| ( ) |
|
|
CUBE 演算子には次の制限があります。
•CUBE 演算子は GROUP BY 句で使用可能なすべての集合関数をサポート しますが、CUBE は現在 COUNT DISTINCT および SUM DISTINCT では サポートされていません。
•CUBE は、現在、逆分散統計関数である PERCENTILE_CONT と PERCENTILE_DISC ではサポートされていません。
•CUBE は SELECT 文でのみ使用できます。CUBE を SELECT のサブクエ リで使用することはできません。
•1 つの GROUP BY 句の中で ROLLUP、CUBE、GROUP BY カラムを組み 合わせる GROUPING の指定は、現時点ではサポートされていません。
56 | Sybase IQ |