Використання операторів pivot і unpivot

Реляційні оператори PIVOT і UNPIVOT можна використовувати для зміни повертає табличне значення виразу в іншій таблиці. Оператор PIVOT розгортає повертає табличне значення вираження, перетворюючи унікальні значення одного стовпця вираження в кілька вихідних стовпців, а також, в разі необхідності, об'єднує залишилися повторювані значення стовпця і відображає їх у вихідних даних. Оператор UNPIVOT виробляє дії, зворотні PIVOT, перетворюючи стовпці повертає табличне значення виразу в значення стовпця.

Синтаксис оператора PIVOT є більш простим і зрозумілим, ніж синтаксис, який може виконати ту саму дію за допомогою послідовності інструкцій SELECT. CASE. Повний опис синтаксису інструкції PIVOT см. В розділі FROM (Transact-SQL).

Анотований синтаксис інструкції PIVOT показаний нижче.

SELECT <несведенный столбец>.

[Перший зведений стовпець] AS <имя_столбца>.

[Другий зведений стовпець] AS <имя столбца>.

[Останній зведений стовпець] AS <имя столбца>

( <запрос SELECT, который формирует данные> )

AS <псевдоним исходного запроса>

( <агрегированный столбец> )

[<столбец, который содержит значение, которые станут заголовками столбцов>]

IN ([перший зведений стовпець]. [Другий зведений стовпець].

[Останній зведений стовпець])

) AS <псевдоним сводной таблицы>

<необязательное предложение ORDER BY>

SELECT ,

[First pivoted column] AS ,

[Second pivoted column] AS ,

[Last pivoted column] AS

(