您好我有两个表,我想将一个列从table1复制到table2。
SET @m=0;
SELECT column INTO @m FROM table1;
UPDATE table2 SET column = @m;
基本上我试图在table2的列中插入table1中列的值。我做错了什么?
LE:我尝试了INSERT INTO并且它最终工作但它在我想要的行之后插入了值。基本上我的所有行都有值0,它创建了另一组具有正确值的行。
答案 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)