Разбить значения строк на столбцы? - PullRequest
0 голосов
/ 12 апреля 2019

Таблица ввода

Id 
1,2,3
6,8,1,2,5
4,9,2,1
6,7,8

Мне нужен вывод, как этот

Id1 id2 id3 id4   id5
1    2   3  Null  Null
6    8   1   2    5
4    9   2   1    Null
6    7   8  Null  Null

1 Ответ

2 голосов
/ 12 апреля 2019

Если вы не можете повторно импортировать, как предложил Гордон, попробуйте это:

Select A.ID
      ,B.*
 From  YourTable A
 Cross Apply (
                Select Pos1  = xDim.value('/x[1]','int')
                      ,Pos2  = xDim.value('/x[2]','int')
                      ,Pos3  = xDim.value('/x[3]','int')
                      ,Pos4  = xDim.value('/x[4]','int')
                      ,Pos5  = xDim.value('/x[5]','int')
                From  (Select Cast('<x>' + replace([Id],',','</x><x>')+'</x>' as xml) as xDim) as A 
             ) B

Возвращает

enter image description here

...