mysql用一个表更新另一个表

Solution 1:  修改1列

update student s, city c
   set s.city_name = c.name
 where s.city_code = c.code;

Solution 2:  修改多个列

update  a,  b 

set a.title=b.title, a.name=b.name
where a.id=b.id

Solution 3: 采用子查询

update student s set city_name = (select name from city where code = s.city_code);

 

REF:

http://dba.stackexchange.com/questions/119621/how-to-update-10-million-rows-in-mysql-single-table-as-fast-as-possible

http://stackoverflow.com/questions/6393763/fast-cross-table-update-with-mysql

http://stackoverflow.com/questions/11709043/mysql-update-column-with-value-from-another-table

posted @ 2015-01-18 17:16  emanlee  阅读(26630)  评论(0编辑  收藏  举报