Skip to Content
SQL Cookbook
book

SQL Cookbook

by Anthony Molinaro
December 2005
Intermediate to advanced
633 pages
14h 34m
English
O'Reilly Media, Inc.
Content preview from SQL Cookbook

Chapter 14. Odds ‘n’ Ends

This chapter contains queries that didn’t fit in any other chapter either because the chapter they would belong to is already long enough, or because the problems they solve are more fun than realistic. This chapter is meant to be a “fun” chapter, in that the recipes here may or may not be recipes that you would actually use; nevertheless, I consider the queries interesting and wanted to include them somewhere in this book.

14.1. Creating Cross-Tab Reports Using SQL Server’s PIVOT Operator

Problem

You want to create a cross-tab report, to transform your result set’s rows into columns. You are aware of traditional methods of pivoting but would like to try something different. In particular, you want to return the following result set without using CASE expressions or joins:

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

Solution

Use the PIVOT operator to create the required result set without CASE expressions or additional joins:

	1 select [10] as dept_10,
	2        [20] as dept_20,
	3        [30] as dept_30,
	4        [40] as dept_40
	5   from (select deptno, empno from emp) driver
	6  pivot (
	7     count(driver.empno)
	8     for driver.deptno in ( [10],[20],[30],[40] )
	9  ) as empPivot

Discussion

The PIVOT operator may seem strange at first, but the operation it performs in the solution is technically the same as the more familiar transposition query shown below:

	select sum(case deptno when 10 then 1 else 0 end) as dept_10,
 sum(case deptno when 20 then 1 else 0 ...
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

SQL Cookbook, 2nd Edition

SQL Cookbook, 2nd Edition

Anthony Molinaro, Robert de Graaf
Head First SQL

Head First SQL

Lynn Beighley
Practical SQL

Practical SQL

Anthony DeBarros

Publisher Resources

ISBN: 0596009763Errata Page