SQLでGROUP BYを用いたレポート生成の手法

SQL(Structured Query Language)はデータベース操作のための言語であり、GROUP BY句はその中でも特に便利な機能の一つです。GROUP BY句を使用すると、指定したカラムでレコードをグループ化し、それぞれのグループに対して集計関数(SUM、AVG、COUNTなど)を適用することができます。この記事では、GROUP BYを用いたレポート生成の手法について詳しく解説します。

目次

GROUP BYの基本的な構文

GROUP BY句の基本的な構文は以下のようになります。

SELECT 列名1, 集計関数(列名2)
FROM テーブル名
GROUP BY 列名1;

サンプルデータ

以下のような`sales`テーブルを例にとります。

店舗ID商品ID売上金額
11011000
11021500
21032000
21011000
サンプルのsalesテーブル

店舗ごとの売上集計

店舗IDごとに売上金額を合計する例を考えます。

SELECT 店舗ID, SUM(売上金額)
FROM sales
GROUP BY 店舗ID;
店舗ID売上合計
12500
23000
店舗ごとの売上合計

HAVING句でのフィルタリング

HAVING句を使用すると、GROUP BYでの集計結果に対して更に条件を付け加えることができます。

SELECT 店舗ID, SUM(売上金額)
FROM sales
GROUP BY 店舗ID
HAVING SUM(売上金額) > 2000;
店舗ID売上合計
23000
HAVING句でフィルタリングした結果

まとめ

SQLのGROUP BY句はデータを集計する際に非常に強力なツールです。基本的な使用方法から、HAVING句を使った高度なフィルタリングまで、さまざまなレポート生成のシナリオで活用することができます。実際に手を動かして多様なデータ集計の技術を磨きましょう。

コメント

コメントする

目次