将表中的字符串拆分为新表

时间:2013-11-30 11:25:04

标签: sql string sql-server-2008

我知道在发布这个问题之前,有很多线程被用于字符串拆分,但我找不到一个完全覆盖我所追求的内容。

我有数据表,其中一列是由逗号分隔的字符串。我要做的是创建一个包含所有原始数据的新表,并将strinf分成每个值的单独列。

初始表格如下:

Value 1    Value 2    Value 3     Value 4  

abc        def        ghi         123,456,789

qrs        tuv        wxy         987,654,321

我希望结果看起来像

Value 1    Value 2    Value 3     Value 4    Value 5    Value 6
abc        def        ghi         123        456        789
qrs        tuv        wxy         987        654        321

我正在使用SQL Server 2008,实际上字符串更长并且其中包含30个值,因此有关如何将解决方案扩展到那么多值的建议将会非常复杂。

提前致谢

1 个答案:

答案 0 :(得分:1)

试试这个:

Select Value  , Substring(Value4, 1,Charindex(',', FullName)-1) as Value5,
Substring(FullName, Charindex(',', Value4)+1, LEN(FullName)) as  Value6
from Table1

了解更多信息See Here