PIVOT演算子を使用して、クロス集計表を作成する

CASE式を使用せずとも、PIVOT演算子を使用することで、
クロス集計表を作成することができます!

「クロス集計表」や「CASE式を使用したクロス集計表の作成」に
ついては、以下の記事を参照してください!

PIVOT演算子とは

「Transact-SQL(T-SQL)」に含まれているモノです。
よってSQL Serverでのみ使用することができます。

PIVOT演算子を使用することで、テーブルのデータをクロス集計表の形で出力することができます。

準備

以下の記事の見出し「CASE式を使用して、クロス集計表の形で出力する(準備)」を実施します。

SQL実行

例として、ここでは以下のクロス集計表を出力します。
・表側に「年月」
・表頭に「商品」

--「年月毎における商品ごとの売上」のクロス集計表を出力
SELECT
	*
FROM
(
	SELECT
		FORMAT(saleDate, 'yyyyMM') AS '売上年月',
		productName AS '商品名',
		price AS '売上'
	FROM sales
) AS TEMP
PIVOT ( SUM(売上)
		FOR 商品名 IN ([りんご],[みかん])
	  ) AS PVT

結果確認

以下の記事の見出し「CASE式を使用して、クロス集計表の形で出力する(結果確認)」を実施します。

 

PIVOT演算子はSQL Serverでのみ使用可能です。
他のRDBMSでは使用不可です。

クロス集計表を出力する際は、
汎用性等を考慮し標準SQLであるCASE式の使用を推奨します!

タイトルとURLをコピーしました