SQL 中拆分字符串

while patindex('%,%',@pid)>0
begin
set @pid_after=substring(@pid,PATINDEX('%,%',@pid)+1,len(@pid))
set @p=substring(@pid,0,len(@pid)-len(@pid_after))
set @strSQL='update  +' set  +'=getdate(),'+@state+' where + @p
exec(@strSQL)
set @pid=@pid_after
print @strSQL
end
set @strSQL='update  +' set  +'=getdate(),'+@state+' where + @pid
print @strSql
--------------------------------------------------方法2:动态SQL法------------------------------------------
declare @s varchar(100),@sql varchar(1000)
set @s='1,2,3,4,5,6,7,8,9,10'
set @sql='select col='''+ replace(@s,',',''' union all select ''')+''''
select @sql
exec (@sql)
------------------------------------------------方法3:循环截取法---------------------------------------------
declare @s varchar(100),@len int,@split varchar(2)
set @s='1,2,3,4,5,6,7,8,9,10'
set @split=','
set @len=len(@split+'a')-2
while charindex(@split,@s)>0
begin
print left(@s,charindex(@split,@s)-1)
set @s=stuff(@s,1,charindex(@split,@s)+@len,'')
end
print @s

转载于:https://www.cnblogs.com/ZhengGuoQing/archive/2008/03/07/1095423.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值