sql的多表更新
问题简化出来就是这样:有两个表,第一个表内有两个字段code_id和code_name,分别有100个记录,code_id是主键,另外一个表内也是两个字段,分别为my_id和my_name,也有100条记录,my_id字段的内容跟第一个表的code_id字段的内容一样,但是第二个表没有内容,现在我想根据id值将第一个表中的name跟新到第二个表去。。不知道sql语句怎么写。。
A表:
code_id code_name
1001 a
1002 b
1005 c
1003 d
... ...
B表
my_id my_name
1003
1001
1007
1005
...
就是讲d插入到B表的第一行,a插入到第二行,c插入到第四行以此类推。。求语句,求解释。。
------解决方案--------------------update b set my_name=code_name from a where a.code_id=my_id
------解决方案--------------------update B表 set my_name=A表.code_name
from A表
where B表.my_id=A表.code_id
------解决方案--------------------update B表 set my_name = A表.code_name
from B表 inner join A表
on B表.my_id = A表.code_id
------解决方案--------------------
update b
set b.my_name=a.code_name
from B表 b
inner join A表 a on b.my_id=a.code_id
------解决方案--------------------
update b
set b.my_name=a.code_name
from B表 b
inner join A表 a on b.my_id=a.code_id
------解决方案--------------------
update b set my_name=code_name
from a,b where a.code_id=b.code_id