Я долго искал, но не могу найти легкого решения своей проблемы. Я хотел бы продублировать запись в таблице, но, конечно, необходимо обновить уникальный первичный ключ.
У меня такой запрос:
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: я хотел бы сделать это, не вводя все имена полей, потому что имена полей могут меняться со временем.