日期:2014-05-18 浏览次数:20647 次
--原始数据:@1
declare @1 table(类别 varchar(6),编码 varchar(1),解释 varchar(4))
insert @1
select '编码','1','中国' union all
select '编码','2','法国' union all
select '编码','3','德国' union all
select '新编码','a','中国' union all
select '新编码','b','法国' union all
select '新编码','c','德国'
--原始数据:@2
declare @2 table(Expr1 varchar(4),Expr2 varchar(1))
insert @2
select '张三',1 union all
select '李四',2 union all
select '王五',3 union all
select '马六',1
update a set a.Expr2=c.编码 from @2 a join @1 b on a.Expr2=b.编码 join @1 c on b.解释=c.解释 where b.类别='编码' and c.类别='新编码'
select * from @2
/*
Expr1 Expr2
----- -----
张三 a
李四 b
王五 c
马六 a
*/