这样吗?declare @aa varchar(100),@bb int,@cc int
set @aa='aaaa-bb-ca s a'set @bb=0
set @cc=charindex('-',@aa)
select substring(@aa,@bb,@cc-@bb)
while @cc>0
begin
set @bb=@cc+1
set @cc=charindex('-',@aa,@bb)
select substring(@aa,@bb,case when @cc>0 then @cc-@bb else len(@aa) end)
end
set @aa='aaaa-bb-ca s a'set @bb=0
set @cc=charindex('-',@aa)
select substring(@aa,@bb,@cc-@bb)
while @cc>0
begin
set @bb=@cc+1
set @cc=charindex('-',@aa,@bb)
select substring(@aa,@bb,case when @cc>0 then @cc-@bb else len(@aa) end)
end
patindex('%ffff%',reverse(field1))
结果为2
select patindex('%a%','xddabacac')
结果为4
reverse(substring(reverse(字段),1,charindex('-',reverse(字段))-1))
以上語句得到
1-332-0565 0565
2-365-36 36
如果用這樣的語句更新50000條記錄,性能會不會很低
这样最简单