那就这样吧:declare @sql varchar(200) declare @km_code varchar(20) set @km_code='3212'select @sql=case when @km_code='2342' then '修改事件1' when @km_code='3212' then '修改事件2' ... end if len(@sql)>0 exec(@sql)
不要前面的select 是否可以,如果是给变量副值的话试一下这样: s = case when i=1 then 1 when i=2 then 2 ... else 5 end
declare @km_code varchar(20) set @km_code='3212'select case when @km_code='2342' then update 语句 when @km_code='3212' then update 语句 ... end
declare @km_code varchar(20),@Cmd varchar(1000) set @km_code='3212'select @Cmd=case @km_code when '2342' then 'update 语句' when '3212' then 'update 语句' ... end exec(@Cmd)
declare @km_code varchar(20)
set @km_code='3212'select @sql=case
when @km_code='2342' then '修改事件1'
when @km_code='3212' then '修改事件2'
...
end if len(@sql)>0
exec(@sql)
s = case when i=1 then 1
when i=2 then 2
...
else 5
end
set @km_code='3212'select case
when @km_code='2342' then update 语句
when @km_code='3212' then update 语句
...
end
set @km_code='3212'select @Cmd=case @km_code
when '2342' then 'update 语句'
when '3212' then 'update 语句'
...
end
exec(@Cmd)