22,210
社区成员
发帖
与我相关
我的任务
分享
if not object_id('tb') is null
drop table tb
go
create table tb(col varchar(10))
go
insert tb
select 'a' union all
select 'a' union all
select 'a' union all
select 'b' union all
select 'b'
go
declare @col varchar(10),@newcol varchar(10)
update tb set
col=@newcol,--这个其实是最后一步
@newcol=case when col=@col then col --执行第一次的时候col<>@col ,所以执行else
else 'new-'+col
end,
@col=col
select * from tb
@newcol=case when col=@col then col --第一步
else 'new-'+col
end,
@col=col --第二步
,col=@newcol,--这个其实是最后一步