BLOGS BY TOPIC
BLOGS BY AUTHOR
BLOGS BY YEAR
Using the Pivot operator in SQL Server allows you to create basic pivot tables from your query results. This blog teaches you how to create simple, static pivots, crosstab-style tables and exciting, dynamic pivot tables.
Posted by Andrew Gould on 09 June 2014
You need a minimum screen resolution of about 700 pixels width to see our blogs. This is because they contain diagrams and tables which would not be viewable easily on a mobile phone or small laptop. Please use a larger tablet, notebook or desktop computer, or change your screen resolution settings.
Pivoting Data in SQL Server
You can download the script to create the database used in this article here.
Grouping and Aggregating Data
The standard way to group and aggregate data in SQL Server is to use the GROUP BY clause.
,COUNT(FilmID) AS [Count of Films]
tblFilm AS f INNER JOIN
tblCountry AS c
Executing the query shown above generates the following results:
The GROUP BY clause generates results grouped in rows.
The row groups generated by this type of query work well enough, but what if you wanted the data grouped by columns instead? What if you wanted both row groups and column groups in the same query?
You might want to organise you groups in columns rather than rows.
You may want to create both row and column groups to create a crosstab-style report.
You can achieve results such as the ones shown above using the PIVOT operator and the rest of this article explains how it works.