Синтаксис PIVOT преобразует данные строк в данные столбцов, и наоборот для синтаксиса UNPIVOT. Не все базы данных поддерживают синтаксис PIVOT, но функциональность может быть реализована, часто с использованием логики принятия решений (операторы CASE и т. Д.) И агрегатных функций.

Синтаксис PIVOT преобразует данные строк в данные столбцов, и наоборот для синтаксиса UNPIVOT. Не все базы данных поддерживают синтаксис PIVOT, но функциональность может быть реализована, часто с использованием логики принятия решений (операторы CASE и т. Д.) И агрегатных функций.

В PIVOTОперация также может называться кросс-таблицей или кросс-таблицей.

Базы данных, поддерживающие синтаксис PIVOT/UNPIVOT:

  • Oracle 11g+
  • SQL Server 2005+

Хотя MySQL не имеет PIVOT функцию, это можно воспроизвести с помощью агрегатной функции и либо CASE заявление или IF()

PostgreSQL (правда, по крайней мере, в 9.3 и ниже) не предлагает PIVOT, Но поставляем crosstab функция из комплекта tablefuncрасширение. Эта функция может использоваться, хотя и неудобно, для достижения того же эффекта.