Pivot в SQL: транспонирование через CASE WHEN

11 задач Лёгкие, средние, сложные С эталонными решениями Решение в браузере
Pivot — превращение строк в колонки. В PostgreSQL нет родного PIVOT, используется CASE WHEN + SUM. На собесе: «посчитай продажи по дням × категориям матрицей», «cross-tab отчёт по регионам и продуктам». 12 задач с разными подходами.
Начать решать задачи →

Все задачи на «pivot» (11)

FAQ: частые вопросы про pivot

Как сделать pivot без PIVOT-команды?

SUM(CASE WHEN col = "A" THEN value END) AS A, SUM(CASE WHEN col = "B" THEN value END) AS B — каждая колонка пивота через отдельный CASE.

Когда использовать pivot?

Когда отчёт ожидает wide-формат (даты × категории), для удобства Excel-экспорта, для матриц признаков ML, для cross-tab отчётов в BI.

Pivot vs Unpivot?

Pivot — строки → колонки (wide). Unpivot — колонки → строки (long). В аналитике pivot для отчётов людям, unpivot для подачи в Tableau/Looker.

Связанные темы SQL

Агрегации · JOIN-запросы · Оконные функции · CTE (Common Table Expressions) · Подзапросы · Работа с датами · Строковые функции · Условная логика

Открыть весь SQL-тренажёр (521 задач) →