Skip to Content
SQLクックブック 第2版 ―データベースエキスパート、データサイエンティストのための実践レシピ集
book

SQLクックブック 第2版 ―データベースエキスパート、データサイエンティストのための実践レシピ集

by Anthony Molinaro, Robert de Graaf, 嶋田 健志, 木下 哲也
February 2022
Intermediate to advanced
560 pages
8h 5m
Japanese
O'Reilly Japan, Inc.
Content preview from SQLクックブック 第2版 ―データベースエキスパート、データサイエンティストのための実践レシピ集

14章その他

この章で説明するクエリは、既存の章に入れるには内容が長いか、解決する問題が現実的なものではなくて楽しいものです。この章は 「楽しい」ものにしたので、紹介するレシピが、読者の現実の問題に応用できるかどうかにはわかりません。しかし、このクエリは面白いので、ぜひ本書で扱いたいと思いました。

レシピ14.1 SQL ServerのPIVOT演算子を使ってクロス集計レポートを作成する

問題

結果セットの行を列に変換するクロス集計レポートを作成したい。従来の変換(ピボット)方法は知っているが、違う方法を試してみたい。特に、CASE式や結合を使わずに次のような結果セットを返したい。

DEPT_10     DEPT_20     DEPT_30    DEPT_40
------- ----------- ----------- ----------
      3           5           6          0

解決策

PIVOT演算子を使って、CASE式や結合を追加せずに求められている結果セットを作成します。

select [10] as dept_10,
       [20] as dept_20,
       [30] as dept_30,
       [40] as dept_40
  from (select deptno, empno from emp) driver  ❶
 pivot (
       count(driver.empno)
       for driver.deptno in ([10],[20],[30],[40])  ❷
       ) as empPivot

解説

PIVOT演算子は最初は奇妙に思えるかもしれませんが、この演算子が解決策の中で行う演算は、以下に示すもっとなじみのある転置クエリと技術的には同じです。

select sum(case deptno ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

詳解 Rustアトミック操作とロック ―並行処理実装のための低レイヤプログラミング

詳解 Rustアトミック操作とロック ―並行処理実装のための低レイヤプログラミング

Mara Bos, 中田 秀基
戦略的データサイエンス入門 ―ビジネスに活かすコンセプトとテクニック

戦略的データサイエンス入門 ―ビジネスに活かすコンセプトとテクニック

Foster Provost, Tom Fawcett, 竹田 正和, 古畠 敦, 瀬戸山 雅人, 大木 嘉人, 藤野 賢祐, 宗定 洋平, 西谷 雅史, 砂子 一徳, 市川 正和, 佐藤 正士

Publisher Resources

ISBN: 9784873119779Other