mysql将一个表中的某一列复制到另外一个表的一列(联表更新,假如全部列)

时间:2021-08-13 10:06:53

这是mysql的写法,然后其他语言的,可以自行google


假如有表 table1

      

table1
id name
1 null
2 null
3 null
4 null

table表2
id name adress
1 zhaikaishun 南宁三十六中
2 kaishunzhai 华中科技大学
3 kaishun 桂林
4 shun 北京

然后我想将表2的name,传到表1当中去

关联字段为id,想要得到如下表

table1
id name
1 zhaikaishun
2 kaishunzhai
3 kaishun
4 shun


SQL语言: 针对mysql的


update table1 table1 inner join table2 on table1..id=table2.id set table.name=table2.name;

注:1.set是一定要放在后面的,之前google百度都是放在前面,那是针对其他语言,mysql如果放在前面会出错

       2.如果数据量很大,联表更新可能会报safe的错误,当你报这个错误的时候,看我下一篇博文,很容易解决

       3.具体是inner join还是left join 还是其他,看自己的需求