我用一个简单的程序撞墙。
从另一张桌子更新一张桌子,继承人我在哪里:
DECLARE @oldcode varchar(50)
DECLARE @newcode varchar(50)
SET @oldcode = table1.OLDCODE
SET @newcode = table1.NEWCODE
UPDATE table2 SET [CODE] = @NEWCODE WHERE [CODE] = @OLDCODE
这导致: 无法绑定多部分标识符“table1.OLDCODE”。
欢呼: -数据:
表1
record OLDCODE NEWCODE
1 ZZZALF38 ALF38
2 ZZZALF38.1 ALF38.1
3 ZZZALF38.2 ALF38.2
table2
record CODE
1 ZZZALF38
2 ZZZALF38.1
3 ZZZALF38.2
希望将表2更改为:
record CODE
1 ALF38
2 ALF38.1
3 ALF38.2
答案 0 :(得分:2)
我猜你正在使用SQL Server,这就是你想要的:
update t2
set code = t1.newcode
from table2 t2 join
table1 t1
on t2.code = t1.oldcode;
答案 1 :(得分:0)
update table2 set code=table1.newcode from table1 on table2.code=table1.code