读书人

数据库字段的拆分,该如何解决

发布时间: 2012-01-12 22:11:58 作者: rapoo

数据库字段的拆分
例:表aaa
字段 name sss
dd sd,fdf,999
tt sdf,ew


拆分为
name sss
dd sd
dd fdf
dd 999
tt sdf
tt ew
大虾们帮帮忙

[解决办法]
Create Table aaa
(nameVarchar(10),
sssVarchar(100))
Insert aaa Select 'dd ', 'sd,fdf,999 '
Union All Select 'tt ', 'sdf,ew '
GO
Select Top 1000 ID = Identity(Int, 1, 1) Into #T From Syscolumns A, Syscolumns B

Select
name,
sss = Substring(A.sss, B.ID, CharIndex( ', ', A.sss + ', ', B.ID) - B.ID)
From aaa A, #T B
Where Substring( ', ' + a.sss, B.id, 1) = ', '
Order By name

Drop Table #T
GO
Drop Table aaa
--Result
/*
namesss
ddsd
ddfdf
dd999
ttsdf
ttew
*/

读书人网 >SQL Server

热点推荐