この記事では、SQL(Structured Query Language)において「GROUP BY」と呼ばれる機能と、集約関数(SUM, AVG, MAX, MIN)の使い方について詳しく解説します。GROUP BYと集約関数はデータベースからのデータ抽出において非常に重要な要素です。これらを効率よく使いこなすことで、複雑なデータ解析も容易になります。
目次
GROUP BYの基本
GROUP BY句は、SQLクエリの一部として使われ、特定のカラムに基づいて行をグループ化します。この機能は、何らかの計算をグループごとに行いたいときに非常に役立ちます。
基本的な書き方
基本的なGROUP BYの書き方は以下の通りです。
SELECT カラム名1, カラム名2, …
FROM テーブル名
GROUP BY カラム名1, カラム名2, … ;
実例
考えられるシナリオとして、ある販売データのテーブルがあり、それぞれの商品カテゴリごとに売上を集計したい場合があります。
SELECT 商品カテゴリ, SUM(売上)
FROM 販売データ
GROUP BY 商品カテゴリ;
集約関数とは
集約関数は、特定のグループに対して何らかの計算を行う関数です。SQLではよく使われる集約関数としてSUM, AVG, MAX, MINなどがあります。
SUM関数
SUM関数は、特定の数値カラムの値をすべて加算します。
商品カテゴリ | 売上 |
---|---|
家電 | 2000 |
家具 | 1500 |
SELECT 商品カテゴリ, SUM(売上)
FROM テーブル名称1
GROUP BY 商品カテゴリ;
AVG関数
AVG関数は、特定の数値カラムの平均値を計算します。
MAX関数とMIN関数
MAX関数は、特定のカラムの最大値を、MIN関数は最小値を返します。
GROUP BYと集約関数の組み合わせ
GROUP BYと集約関数を組み合わせることで、更に複雑なデータ解析が可能になります。
SELECT 商品カテゴリ, SUM(売上), AVG(売上), MAX(売上), MIN(売上)
FROM テーブル名称1
GROUP BY 商品カテゴリ;
まとめ
GROUP BYと集約関数(SUM, AVG, MAX, MIN)は、SQLでのデータ抽出や解析において非常に重要なツールです。これらを効率よく使いこなすことで、多様なデータ解析が可能になります。特に、複数の集約関数を一つのSQLクエリに組み合わせることで、より高度な分析が行えます。
created by Rinker
¥4,554
(2025/01/18 14:22:31時点 Amazon調べ-詳細)
コメント