如何在一行中输入逗号列表字段并将其显示在列中?
例如,
ID | Colour
------------
1 | 1,2,3,4,5
Run Code Online (Sandbox Code Playgroud)
至:
ID | Colour
------------
1 | 1
1 | 2
1 | 3
1 | 4
1 | 5
Run Code Online (Sandbox Code Playgroud)
解决此问题的常用方法是创建拆分功能.您可以从Google获取一个,例如来自SQL Team的一个.创建函数后,您可以使用它:
create table colours (id int, colour varchar(255))
insert colours values (1,'1,2,3,4,5')
select colours.id
, split.data
from colours
cross apply
dbo.Split(colours.colour, ',') as split
Run Code Online (Sandbox Code Playgroud)
这打印:
id data
1 1
1 2
1 3
1 4
1 5
Run Code Online (Sandbox Code Playgroud)