SQL convert rows to columns
Имеется таблица в строковом представлении:

Необходимо получить следующий вид:
Пример инициализации таблицы - SQL Fiddle Пытался реализовать с помощью UNPIVOT, но ничего не выходит.
Тестирую на MS SQL Server 2017
Ответы (1 шт):
Автор решения: Akina
→ Ссылка
WITH cte AS (
SELECT [order_] [order], [date_] [date], [sum_] [sum] FROM table1 UNION ALL
SELECT [order_1], [date_1], [sum_1] FROM table1 UNION ALL
SELECT [order_2], [date_2], [sum_2] FROM table1 UNION ALL
SELECT [order_3], [date_3], [sum_3] FROM table1 UNION ALL
SELECT [order_4], [date_4], [sum_4] FROM table1 UNION ALL
SELECT [order_5], [date_5], [sum_5] FROM table1 UNION ALL
SELECT [order_6], [date_6], [sum_6] FROM table1 UNION ALL
SELECT [order_7], [date_7], [sum_7] FROM table1 UNION ALL
SELECT [order_8], [date_8], [sum_8] FROM table1 UNION ALL
SELECT [order_9], [date_9], [sum_9] FROM table1
)
SELECT *, SUM([sum]) OVER (ORDER BY [date]) balance
FROM cte;
