我正在尝试将内容从一个表复制到另一个表,两个表都具有相同的表结构。
INSERT INTO master SELECT * FROM slave
ON DUPLICATE KEY UPDATE id=id+1
这给出了错误:
#1052 - 字段列表中的列“id”不明确
看似简单的问题,但我无法解决。有谁知道要解决这个问题吗?
最佳答案
它所说的是确切的问题:字段列表中的列“id”不明确
。您必须指定您所指的 id
列 - master
的还是 slave
的。您可以通过在表名称和字段名称之间放置一个点来指定 master
的 id
列,master.id
:
INSERT INTO master SELECT * FROM slave
ON DUPLICATE KEY UPDATE master.id = master.id + 1
关于MySQL 使用 INSERT 复制表数据并进行重复键更新... "field id is ambiguous?",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9679729/