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

Hus*_*110 3 mysql sql 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);
Run Code Online (Sandbox Code Playgroud)

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

来自德国的格雷茨和你的答案!

OMG*_*ies 9

非常接近 - 使用:

INSERT INTO TABLE_B
SELECT column_1, column_2, column_3 
  FROM TABLE_A
 WHERE id = 1
Run Code Online (Sandbox Code Playgroud)

..假设只有三列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
Run Code Online (Sandbox Code Playgroud)

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

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
Run Code Online (Sandbox Code Playgroud)