У меня есть запрос SQL, который дает мне результат с двумя столбцами, например:
A | B
-----
2 | 1
3 | 2
3 | 3
3 | 4
3 | 5
4 | 6
4 | 7
4 | 8
4 | 9
Я хотел бы разбить это на несколько столбцов, как это. Каждый для каждой строки в A
с определенным значением преобразует это в столбцы. Максимальное количество строк, в котором может встречаться конкретное значение, например, x , в столбце A
равно 4 (если это помогает).
A | B1 | B2 | B3 | B4
----------------------------
2 | 1 | NULL | NULL | NULL
3 | 2 | 3 | 4 | 5
4 | 6 | 7 | 8 | 9
Я застрял, пытаясь сделать это с помощью pivot часами. Теперь я думаю о том, чтобы запросить это в python (клиент использует это) и выполнить преобразование там (что легко). Но можно ли это сделать в SQL? Я использую SQL Server 2016.