SQLでHAVING句を使用して年齢グループ別の平均購入金額を特定する方法

この記事では、SQLのHAVING句を使用して年齢グループ別(10代、20代など)の平均購入金額が一定額以上のグループを特定する方法について詳しく説明します。HAVING句は、GROUP BYでグルーピングした後の集計結果に対してフィルタリングを行う強力な機能です。この記事を読めば、HAVING句の基本的な使い方から、実用的なSQLクエリの書き方までをマスターできるでしょう。

目次

HAVING句の基本

HAVING句はSQLで集計した結果に対して条件を指定し、特定のグループだけを取得するための句です。例えば、年齢別に何らかのデータを集計した後、その結果から特定の条件に一致するものだけを取り出すことができます。

基本的な構文

HAVING句を使用する基本的なSQLクエリの構文は以下の通りです。

SELECT カラム1, カラム2, ... 
FROM テーブル
GROUP BY グルーピングするカラム
HAVING 集計関数(カラム) 条件;

年齢グループ別の平均購入金額を求める

実際に年齢別の平均購入金額を求めるクエリを見てみましょう。以下の例では、年齢が10代、20代、30代…と分けられている仮定で、その各グループの平均購入金額を計算します。

サンプルテーブル

以下のテーブルを使って説明します。

ID名前年齢購入金額
1田中255000
2鈴木307000
3佐藤183000
購入者データテーブル

SQLクエリ

以下のSQLクエリを使用して年齢グループ別の平均購入金額を計算します。

SELECT FLOOR(年齢 / 10) * 10 AS 年齢グループ, AVG(購入金額) AS 平均購入金額
FROM 購入者データ
GROUP BY 年齢グループ
HAVING AVG(購入金額) >= 4000;

結果解釈

このSQLクエリを実行すると、平均購入金額が4000円以上の年齢グループが出力されます。出力される年齢グループは、その条件に合致するため、マーケティングや販促活動で特に注目すべきグループと言えます。

まとめ

HAVING句を使うことで、GROUP BYで集計したデータから特定の条件を満たすグループだけを簡単に抽出することができます。この機能は、データ分析でよく使われるため、しっかりと理解しておくと非常に便利です。特に、年齢や収入、地域などでグループ分けをして分析する場合には、HAVING句は欠かせないツールとなります。

コメント

コメントする

目次