如何在第一个表中使用额外字段在2个表之间复制数据,必须使用默认值进行更新?

use*_*409 4 mysql insert

我有2个表表名(ID,名称,电话,城市,州,摆脱)表NAMES2(id,name,phone,city)

此SQL语句不起作用:INSERT INTO NAME(id,name,phone,city,rid)VALUES((SELECT id,name,phone,citY from NAMES2 WHERE city ="Bangalore"),'72')

我希望表NAME中的rid字段对于从表NAMES2插入的所有记录都有72.注意:两个表都不相同.

Dev*_*art 12

试试这个查询 -

INSERT INTO NAME (id, name, phone, city, rid)
  SELECT id, name, phone, citY, 72 FROM NAMES2 WHERE city = 'Bangalore'
Run Code Online (Sandbox Code Playgroud)

如果字段rid具有默认值72(运行SHOW CREATE TABLE以查看它),则可以使用此查询 -

INSERT INTO NAME (id, name, phone, city)
  SELECT id, name, phone, citY FROM NAMES2 WHERE city = 'Bangalore'
Run Code Online (Sandbox Code Playgroud)