create table #tempTable( -- 实验表
[oldID] char(1),
[newID] char(1),
[name] varchar(10))
insert into #tempTable values('1','6','zhang')
insert into #tempTable values('2','7','li')
insert into #tempTable values('3','8','wang')
insert into #tempTable values('4','9','xiao')
insert into #tempTable values('5','0','gu')
select * from #tempTable -- 更改之前表值
declare @condition varchar(20) -- 条件
set @condition = '''1'';''2'';''3'';''4'';''5'';'
declare @sql nvarchar(100)
declare @charindex int set @charindex=0
declare @index int set @index=0
while @index < 5
begin
set @sql = 'update #tempTable set [oldID]=[newID]
where [oldID] in('+
replace(
substring(@condition,@charindex,
charindex(';',@condition,@charindex+1)-@charindex),';','')+')'
print @sql
exec sp_executesql @sql
set @charindex = charindex(';',@condition,@charindex+1)
set @index = @index + 1
end
select * from #tempTable
drop table #tempTablesql 截取字符串,当多选择条件时,使用动态语句实现
浙公网安备 33010602011771号