He estado buscando por un tiempo pero no puedo encontrar una solución fácil para mi problema. Me gustaría duplicar un registro en una tabla, pero, por supuesto, es necesario actualizar la clave principal única.
Tengo esta consulta:
INSERT INTO invoices
SELECT * FROM invoices AS iv WHERE iv.ID=XXXXX
ON DUPLICATE KEY UPDATE ID = (SELECT MAX(ID)+1 FROM invoices)
el problema es que esto solo cambia el ID
de la fila en lugar de copiar la fila. Sabe alguien cómo arreglar esto ?
// editar: me gustaría hacer esto sin escribir todos los nombres de los campos porque los nombres de los campos pueden cambiar con el tiempo.