在mysql中,用一个表的字段填充另一个表,(也许是版本的缘故,)不能直接使用set select的结果,即:
UPDATE tableA
SET columnA=tableB.columnB
FROM
(SELECT columnB FROM tableB WHERE ...)
WHERE ...
要使用
UPDATE table1
INNER JOIN table2 ON table2.field1=table1.field1
SET table1.field2=table2.field2
参考
http://jingyan.baidu.com/article/0964eca22b27f78285f53626.html