0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

個人的備忘録:SQLにおけるGROUP BY句の理解が曖昧だったため、整理を兼ねて記事としてまとめてみた

Last updated at Posted at 2025-04-01

はじめに

SQLにおけるGROUP BY句は、集計処理や統計的な分析を行う上で欠かせない機能です。

特に、売上や件数などの合計・平均をカテゴリ別に集計したい場合などに活躍します。

本記事では、GROUP BY句の基本的な使い方とポイントを備忘録としてまとめます。


書こうと思ったきっかけ

業務でSQLの集計処理を繰り返す中で、GROUP BY句の使い方や挙動を毎回調べる場面が多かったため、効率よく思い出せるように整理しておきたいと思いました。

個人の備忘録程度の走り書きとなっておりますが、温かい目で見守っていただければ幸いです。


基本構文

SELECT カラム名, 集計関数(カラム名)
FROM テーブル名
GROUP BY カラム名;

使用例

テーブル:sales(売上データ)

| id | 商品名   | 金額 |
|----|--------|------|
| 1  | パン    | 100  |
| 2  | パン    | 120  |
| 3  | 牛乳    | 200  |
| 4  | パン    | 110  |
| 5  | 牛乳    | 220  |

商品ごとの売上合計を出す場合:

SELECT 商品名, SUM(金額) AS 合計金額
FROM sales
GROUP BY 商品名;

実行結果:

| 商品名 | 合計金額 |
|--------|----------|
| パン   | 330      |
| 牛乳   | 420      |

注意点

  • GROUP BY句に指定されていないカラムをSELECTに含めるとエラーになる(またはDBにより未定義の動作)。
  • GROUP BYの後に複数カラムを指定することで、より細かい集計も可能。

よく使う集計関数

  • SUM(カラム):合計
  • AVG(カラム):平均
  • COUNT(*):件数
  • MAX(カラム):最大値
  • MIN(カラム):最小値

まとめ

GROUP BYは、データをカテゴリ別に集計するための強力なSQL機能です。

売上集計や件数の集約など、日常的なデータ分析に広く使われています。

基本を押さえつつ、複数カラム指定やHAVING句と組み合わせた条件指定にもチャレンジしてみます!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?