MySQL从另一个表复制列

时间:2014-05-15 08:02:44

标签: mysql sql

您好我有两个表,我想将一个列从table1复制到table2。

SET @m=0;
SELECT column INTO @m FROM table1;
UPDATE table2 SET column = @m;

基本上我试图在table2的列中插入table1中列的值。我做错了什么?

LE:我尝试了INSERT INTO并且它最终工作但它在我想要的行之后插入了值。基本上我的所有行都有值0,它创建了另一组具有正确值的行。

4 个答案:

答案 0 :(得分:1)

语法是正确的,但在复制时你应该注意类型......
类型应该相互兼容

INSERT INTO table (column)
  SELECT a_column 
  FROM a_table
                       --- optional (multiple) JOINs
                       --- and WHERE
                       --- and GROUP BY      
                       --- any complex SELECT query

答案 1 :(得分:0)

请尝试以下语法:INSERT INTO table2 (column) SELECT column FROM table1

不需要VALUES和括号。

答案 2 :(得分:0)

如果您尝试将此操作设置为一行,则可以使用存储过程。

SELECT column INTO myvar FROM table1

INSERT INTO table2 (column) VALUES (myvar)

答案 3 :(得分:0)

尝试这种方式:

INSERT INTO table2 (column) (SELECT column FROM table1)
相关问题