我已经寻找了一段时间,但找不到适合我问题的简单解决方案。我想在表中复制一条记录,但是当然,唯一的主键需要更新。
我有这个查询:
INSERT INTO invoices
SELECT * FROM invoices AS iv WHERE iv.ID=XXXXX
ON DUPLICATE KEY UPDATE ID = (SELECT MAX(ID)+1 FROM invoices)
问题在于,这只是更改ID
行的,而不是复制行。有人知道如何解决这个问题吗?
// edit:我想在不键入所有字段名称的情况下执行此操作,因为字段名称会随着时间变化。