如何从表中复制一些列到另一个mysql [英] How to copy some column from a table to another mysql

查看:161
本文介绍了如何从表中复制一些列到另一个mysql的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两个表格:

表1:

|A|B|C|D|E|F|G|H|I|J|

表2:

|A|C|D|E|G|H|J|K|L|M|N|O|P|

我必须将表2中的一些列复制到表1中。
我试试的是:

i have to copy some columns from table 2 to table 1. What i try is:

INSERT INTO `table 1` (`C`,`D`,`E`,`G`,`J`)
     SELECT `C`,`D`,`E`,`G`,`J` FROM `table 2` WHERE 
     `table 1`.`A` = `table 2`.`A`;

但结果是:

#1054 - Unknown column 'table 1.A' in 'where clause'

哪里是错误?有人可以帮我吗?

where is the error? can someone help me?

我的错误是我没有插入新的行,但是更新了匹配列A的行...我必须以哪种方式编辑我的查询?感谢!

MY ERROR IS THAT I DON'T HAVE TO INSERT NEW ROWS, BUT UPDATE THE ROWS THAT MATCH THE COLUMN A... in which way i have to edit my query? thanks!

推荐答案

请尝试:

INSERT INTO `table1` (`C`,`D`,`E`,`G`,`J`) VALUES
     (SELECT `C`,`D`,`E`,`G`,`J` FROM `table2` WHERE 
     `table1`.`A` = `table2`.`A`);

已修改::

如果你只需要更新::

If you only need to update then ::

update table1 
set 
table1.C=table2.C, 
table1.D=table2.D,
table1.E=table2.E, 
table1.G=table2.G,
table1.J=table2.J
WHERE 
table1.A = table2.A;

这篇关于如何从表中复制一些列到另一个mysql的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆