
第 4 章 OLAP の使用
GROUP BY 句の拡張機能
GROUP BY 句の拡張機能により、次のような処理を行う複雑な SQL 文を書く ことができます。
• 入力ローを複数の次元に分割し、結果グループの複数のサブセットを組み
| 合わせる。 |
| • “ データ・キューブ ” を作成し、データ・マイニング分析のための疎密度 |
| の多次元結果セットを用意する。 |
| • 元のグループを含んだ結果セットを作成する ( 必要に応じて、小計ローと |
| 合計ローを含める場合もある )。 |
| ROLLUP や CUBE などの OLAP の Grouping() ( グループ化 ) 操作は、プレフィ |
| クスや小計ローとして概念化できます。 |
プレフィクス | GROUP BY 句を含むクエリでは、プレフィクスのリストが作成されます。プ |
| レフィクスとは、GROUP BY 句の項目のサブセットであり、クエリの GROUP |
| BY 句の項目のうち最も右にある 1 つまたは複数の項目を除外することで作成 |
| されます。残りのカラムはプレフィクス・カラムと呼ばれます。 |
| ROLLUP 例 1 次に示す ROLLUP のクエリの例では、GROUP BY のリストに |
| 2 つの変数 (Year と Quarter) が含まれています。 |
| SELECT year (order_date) Year, quarter(order_date) |
| Quarter, COUNT(*) Orders |
| FROM alt_sales_order |
| GROUP BY ROLLUP(Year, Quarter) |
| ORDER BY Year, Quarter |
| このクエリには次の 2 つのプレフィクスがあります。 |
| • Quarter を除外するプレフィクス - プレフィクス・カラムには 1 つのカラ |
| ム (Year) が含まれます。 |
| • Quarter と Year の両方を除外するプレフィクス - プレフィクス・カラム |
| は存在しません。 |
注意 GROUP BY リストには、項目と同じ数のプレフィクスが含まれます。
パフォーマンス&チューニング・ガイド | 47 |