我正在使用 REPLACE 查询将一个表的内容替换为另一个表的内容。 这是我的表格:
table_one
- ID
- 姓名
table_two
- ID
- 名字
- 我的名字
这是我当前使用的查询:
REPLACE INTO tbl_two (id, fname)
SELECT id, name FROM tbl_one
如何才能使 lname
字段中的现有值不会变为 NULL
?
最佳答案
好吧,当找到现有行(由 PK 或 UNIQUE 标识)时,REPLACE INTO 将删除并重新创建行
你可能更愿意使用
INSERT INTO...
ON DUPLICATE KEY UPDATE
INSERT INTO tbl_two (id, fname)
SELECT t.id, t.name FROM tbl_one t
ON DUPLICATE KEY UPDATE id = t.id, fname = t.name
关于mysql - 对多个表使用 REPLACE INTO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16436851/