Оператор PIVOT в SQL преобразует данные на уровне строк в столбцы, фактически трансформируя вертикальную раскладку данных в горизонтальную. Это делает датасеты намного проще для чтения и анализа в контексте отчётности.
Представь таблицу продаж, где каждая строка содержит месячный итог:
Month | Sales
--------|------
January | 500
February| 700
После применения PIVOT результат становится таким:
January | February
--------|----------
500 | 700
Типичный PIVOT-запрос имеет такую структуру:
SELECT *
FROM table_name
PIVOT (
AGG_FUNCTION(value_column)
FOR pivot_column IN ([col1], [col2])
);
AGG_FUNCTION — агрегирующая функция, например SUM или COUNTFOR pivot_column — столбец, значения которого становятся новыми заголовкамиIN — определяет конкретные значения, которые преобразуются в столбцыIN, а значит динамические значения требуют дополнительной обработкиCASE WHEN позволяют добиться того же результата в системах типа PostgreSQLОператор PIVOT преобразует данные из горизонтального макета в вертикальный, что делает его идеальным для нормализации денормализованных наборов данных.
Новый — ещё не проверен сообществом
Вы