[转]在Sql Server中将字符串分割成表格数据示例

本文转自:http://www.lmwlove.com/ac/ID718

比如我们有一个字符串
declare @appName varchar(50)
select @appName ='UserID=admin,Account=ABC'

然后我们要以","为行分割符号,以"="为列分割符号将@appName分割成多行两列的格表数据。
也就是将上面的@appName值分割成



Name

Value



UserID

admin



AccountNumber

ABC

这种格式的数据。

请教了很多朋友,下面将最简单的方法贴出来,供大家参考:

declare @a table(a varchar(100),b varchar(100))
declare @s varchar(100),
@m varchar(100),
@i int

set @s='UserID=admin,Account=ABC'
set @i=charindex(',',@s)

while @i >0
begin
set @m=left(@s,@i-1)
insert into @a(a) values(@m)
set @s=right(@s,len(@s)-@i)
set @i=charindex(',',@s) 
end
insert into @a(a) values (@s)

select left(a,charindex('=',a)-1) as Name,right(a,len(a)-charindex('=',a)) as Value from @a

 

posted on 2013-07-05 16:49  freeliver54  阅读(686)  评论(1编辑  收藏  举报

导航