日期:2014-05-16  浏览次数:20783 次

同一数据库,一个表的属性列更新到另一个表的属性列
有a表和b表在同一数据库。

a表有uid,field1,field2,fiedl3
b表有uid,field_1,field_2,field_3。。。

a表uid和b表uid一一对应,但是a表的field1,2,3有内容b表的没有。。想把a表所有uid的各个field内容更新到b表对应uid的各个对应field里面。

构造了
SQL code

UPDATE a 
SET a.field1=b.field_1,a.field2=b.field_2,a.field3=b.field_3
FROM a,b
WHERE a.uid=b.uid


但是提示错误 check the manual that corresponds to your MySQL server version for the right syntax to use near 
这个不知道哪里错了。。看网上的说是表和关键字或者属性列名有冲突。但是a,b是改了后的表名了。。
所有来问问大家是哪里问题。。

------解决方案--------------------
SQL code
update a inner join b on a.uid =b.uid
set b.field_1=a.field_1,  b.field_2=a.field_2 ,b.field_3= a.field_3