GROUP BY句とは?グループバイく
GROUP BY句とは、指定した列の値が等しい行を1つのまとまりへ束ね、まとまりごとに1行だけ結果を返すための句。束ねたあとは個々の行を直接は見られなくなり、参照できるのは束ねる基準にした列と、COUNTやSUMといった集約関数が返す値だけになる。
最終更新:2026-10-06
データベースSPを最短で暗記・合格する →背景
集計は業務がデータベースへ求める用途の中心にあるが、行を1件ずつ取り出して数える書き方では件数のぶんだけ往復が生じる。まとまりの定義をSQL側で宣言し、集約はDBMSに一度で計算させれば、並べ替えやハッシュを使う効率的な経路を最適化器が選べる。分析用途でサマリ表や列指向の仕組みが発達したのも、この処理をどう速くするかという延長線上にある。
具体例
SELECT 商品分類, SUM(金額) FROM 受注明細 GROUP BY 商品分類 で分類ごとの売上が出る。基準を(商品分類, 受注月)と2列にすれば、分類と月の組合せごとに1行が返る。
試験での引っ掛け
SELECT句に書けるのは、束ねる基準にした列と集約関数だけ。ほかの列を書くと標準SQLでは誤りになる。1つのまとまりに複数の値が残っていて、どれを返すか決められないからである。製品によっては通る実装もあるが、試験では標準の扱いで答える。NULLどうしは同じまとまりに束ねられる点も押さえたい。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。