sql 以逗号为间隔截取字符

来源:百度知道 编辑:UC知道 时间:2024/05/15 16:50:51
SQL2000
在事件触发器里面!
比如说这个为 (埃保常,去玩儿,去玩儿)
怎么用SUBSTRING 截取他们然后分别去查询!
现在考虑的是截取的问题!

需要循环吗?
怎么确定 定义的变量多少?
求救!

在线等!

MSN zd@csev.net

高人们露个头吧!

declare @sql varchar(5000),@totalLength int,@length int,@tag varchar(20),@currentNumber int

set @sql='baidu,google,yahoo,my,db,sqlserver,helloworld,'
set @tag=','
set @totalLength=len(@sql)

set @length=charindex(@tag,@sql)
print '第1条记录: '+left(@sql,@length-1)
set @sql=substring(@sql,@length+1,@totalLength)
set @currentNumber=1
while (@length>0)
begin
set @currentNumber=@currentNumber+1
set @length=charindex(@tag,@sql)
if(@length=0)
begin
break;
end
print '第'+ltrim(str(@currentNumber))+'条记录:'+left(@sql,@length-1)
set @sql=substring(@sql,@length+1,@totalLength)
end

第1条记录: baidu
第2条记录:google
第3条记录:yahoo
第4条记录:my
第5条记录:db
第6条记录:sqlserver
第7条记录:helloworld