SQLでGROUP BYを使ったデータ集計の方法

この記事では、SQLの`GROUP BY`について、その基本的な構文と使用例を解説します。`GROUP BY`は、データベースから取得したデータを特定のカラムの値に基づいてグループ化する際に使用される非常に強力な命令です。以下では、具体的なコード例を交えて、この命令の使い方を説明します。
目次

GROUP BYとは

`GROUP BY`はSQLの一部であり、データベース内のテーブルからデータを抽出する際に、特定のカラムでデータをグループ化するために使用されます。この命令は、集計関数(SUM, COUNT, AVGなど)と一緒に使われることが多く、データ分析やレポート生成で頻繁に用いられます。

基本的な構文

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

使用例

以下の使用例では、仮想の`売上テーブル`を用いて具体的に説明します。このテーブルには`商品名`、`売上日`、`売上額`の3つのカラムがあります。

売上テーブルのサンプルデータ

商品名 売上日 売上額
リンゴ 2023-01-01 200
リンゴ 2023-01-02 250
バナナ 2023-01-01 100
バナナ 2023-01-03 120
売上テーブルのサンプルデータ

商品名ごとの売上合計を求める

`sCode` SELECT 商品名, SUM(売上額) FROM 売上テーブル GROUP BY 商品名;
このクエリにより、各商品の売上合計が計算されます。
商品名 合計売上額
リンゴ 450
バナナ 220
商品名ごとの合計売上額

売上日と商品名ごとの売上合計を求める

`sCode` SELECT 売上日, 商品名, SUM(売上額) FROM 売上テーブル GROUP BY 売上日, 商品名;