【SQL】 GROUPING関数の使い方(集計行か調べる)
GROUPING関数は、ORACLE MS-SQL に対応しています。
GROUPING関数 : 書式
書式 GROUPING(column)
引数 column:確認する列名
戻り値 1:集計行 0:集計行でない
引数 column:確認する列名
戻り値 1:集計行 0:集計行でない
GROUPING関数 : 解説
GROUPING関数は、集計行かどうか確認する関数です。GROUP BY句でROLLUPなどを用いて集計を行った場合には、集計行が付加されます。この付加された行を確認するのにGROUPING関数を使います。
GROUPING関数 : 使用例
SQL文 ORACLE
SELECT クラス, AVG(得点), GROUPING(クラス) FROM 試験結果
GROUP BY ROLLUP(クラス);
SQL文 MS-SQL
SELECT クラス, AVG(得点), GROUPING(クラス) FROM 試験結果
GROUP BY クラス WITH ROLLUP;
実行結果
SELECT クラス, AVG(得点), GROUPING(クラス) FROM 試験結果
GROUP BY ROLLUP(クラス);
SQL文 MS-SQL
SELECT クラス, AVG(得点), GROUPING(クラス) FROM 試験結果
GROUP BY クラス WITH ROLLUP;
実行結果
クラス | AVG(得点) | GROUPING(クラス) |
---|---|---|
A | 78.5 | 0 |
B | 69 | 0 |
C | 76 | 0 |
D | 70.5 | 0 |
73.5 | 1 |
表:試験結果
名前 | 性 | クラス | 得点 |
---|---|---|---|
山田太郎 | 男 | A | 92 |
佐藤隆 | 男 | A | 65 |
斎藤陽子 | 女 | B | 83 |
森太一 | 男 | B | 55 |
田中夏美 | 女 | C | 67 |
高橋徹 | 男 | C | 85 |
鈴木一郎 | 男 | D | 58 |
山本綾子 | 女 | D | 83 |
関連リンク
関数一覧ページ
SQLリファレンス > 関数
ORACLE、MS-SQL Server、MS-Access、MySQLで使用する関数の一覧表です。いちれべ.comは、オラクル、MS-SQL Server、MS-Access で使用可能か一目でわかるのが特徴のSEサポートサイトです。