如何使用Select-Statements将值插入MYSQL表

时间:2010-10-11 18:18:22

标签: sql mysql database insert

好的,这个与我的上一个非常相似,但我不明白......!

我正在尝试以下方法:

Insert into table b
  (Select column_1 from table_a where ID = 1),
  (Select column_2 from table_a where ID = 1),
  0,
  (Select column_3 from table_a where ID = 1);

但我总是得到语法错误......! 我认为我正在尝试做的事情是非常合乎逻辑的。

来自德国的Greetz和你的答案!

1 个答案:

答案 0 :(得分:9)

非常接近 - 使用:

INSERT INTO TABLE_B
SELECT column_1, column_2, column_3 
  FROM TABLE_A
 WHERE id = 1

..假设TABLE_B中只有三列。否则,请指定要插入的列:

INSERT INTO TABLE_B
  (column_1, column_2, column_3)
SELECT column_1, column_2, column_3 
  FROM TABLE_A
 WHERE id = 1

并且,如果需要 - 您也可以使用静态定义的值:

INSERT INTO TABLE_B
  (column_1, column_2, column_3, column_4)
SELECT column_1, column_2, 0, column_3 
  FROM TABLE_A
 WHERE id = 1