有表tb, 如下: id value ----------- ----------- 1 aa,bb 2 aaa,bbb,ccc 欲按id,分拆value列, 分拆后结果如下: id value ----------- -------- 1 aa 1 bb 2 aaa 2 bbb 2 ccc */ --方法1.使用临时表完成 SELECT TOP 8000 id = IDENTITY( int , 1, 1) INTO # FROM syscolumns a, syscolumns b SELECT A.id, value = SUBSTRING (A.[value], B.id, CHARINDEX( ',' , A.[value] + ',' , B.id) - B.id) FROM tb A, # B WHERE SUBSTRING ( ',' + A.[value], B.id, 1) = ',' DROP TABLE #
SQL 逗号分隔将一行拆成多行
最新推荐文章于 2024-03-24 19:49:34 发布