T-SQL:如何将逗号分隔值从列拆分为行?

时间:2009-10-19 09:28:08

标签: tsql transform row

我有下表(引用的数量是可变的):

Id | FK_ID| Reference |
-----------------------
1    2100   GI2, GI32
2    2344   GI56  

我需要以下结果:

Id | FK_ID| Reference |
-----------------------
1    2100   GI2 
2    2100   GI32
3    2344   GI56  

有没有使用MS SQL Server 2005转换数据的简短方法?

谢谢

编辑:直接链接到解决方案: http://www.sommarskog.se/arrays-in-sql-2005.html#iter-list-of-strings

2 个答案:

答案 0 :(得分:3)

答案 1 :(得分:1)

您使用的是哪个SQL Server版本?

2005年之前

按照here的说明使用实用程序 Numbers 表 我以前曾多次使用它并取得了巨大的成功。

2005及之后

阅读其他开发者 Mitch Wheat的答案。