SQL如何将一列a,b,c按逗号分割成多行

SQL语句
331
0
0
2022-04-19

经常使用数据库的应该会碰到,一个字段的值有可能是 a,b,c,d,那么如何将这4个值分隔成一行一个值呢?

使用下列查询语句即可

SELECT A.id, B.value FROM

(

SELECT id, [value] = CONVERT(xml,'<root><v>' + REPLACE([value], ',', '</v><v>') + '</v></root>') FROM TE

) A OUTER APPLY

(

SELECT value = N.v.value('.', 'varchar(100)') FROM A.[value].nodes('/root/v') N(v)

) B

SQL如何将一列a,b,c按逗号分割成多行