SQLでPIVOTクエリを使う方法と使用ケース

SQLのPIVOTクエリは、行を列に変換する際に非常に便利な機能です。多くのデータベース管理システム(DBMS)でサポートされています。この記事では、PIVOTクエリの基本的な書き方と、それが役立つ具体的な使用ケースについて詳しく説明します。

目次

PIVOTクエリとは

PIVOTクエリは、SQLの一部であり、データを縦から横に変換するためのものです。例えば、年ごとの各月の売上データが行として格納されているテーブルを、年ごとに各月の売上を列として表示するように変換できます。

基本的な構文

基本的なPIVOTクエリの構文は以下の通りです。

SELECT ...
FROM ...
PIVOT (aggregate_function(column_to_aggregate)
       FOR column_to_pivot
       IN (list_of_values))

PIVOTクエリの基本的な書き方

ここで、PIVOTクエリの基本的な書き方について簡単な例を使って説明します。

サンプルテーブル

例として、次のような「売上データ」テーブルを考えます。

売上額
202111000
202121200
202131100
売上データサンプルテーブル

PIVOTクエリの例

このテーブルから、年ごとに各月の売上を列として表示するクエリは以下のようになります。

SELECT 年, [1] as 一月, [2] as 二月, [3] as 三月
FROM 売上データ
PIVOT (SUM(売上額)
      FOR 月
      IN ([1], [2], [3]))

PIVOTクエリの使用ケース

PIVOTクエリは、特定の分析やレポート作成で非常に便利です。以下は、その主な使用ケースです。

時系列データの分析

時系列データ(例:年、四半期、月など)を横に並べて比較分析する際に役立ちます。

部門ごと、商品カテゴリごとの集計

売上や利益を部門ごと、または商品カテゴリごとに集計して横に並べる場合にも便利です。

まとめ

PIVOTクエリは、SQLでデータを効率的に横に展開するための強力なツールです。特に時系列データやカテゴリ別のデータ分析において、その能力を最大限に発揮します。この記事を参考に、ぜひPIVOTクエリの活用を検討してみてください。

コメント

コメントする

目次