Tjek denne side ud:https://web. archive.org/web/20150329004325/https://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html
Nederst på siden forklarer de, hvordan du kan gøre LAST_INSERT_ID meningsfuld for opdateringer ved at sende et udtryk til den pågældende MySQL-funktion.
Fra MySQL-dokumentationseksemplet:
Hvis en tabel indeholder en AUTO_INCREMENT kolonne og INSERT ... UPDATE indsætter en række, returnerer funktionen LAST_INSERT_ID() værdien AUTO_INCREMENT. Hvis sætningen opdaterer en række i stedet, er LAST_INSERT_ID() ikke meningsfuld. Du kan dog omgå dette ved at bruge LAST_INSERT_ID(udtr.). Antag, at id er kolonnen AUTO_INCREMENT. For at gøre LAST_INSERT_ID() meningsfuld for opdateringer, skal du indsætte rækker som følger:
INSERT INTO table (a,b,c) VALUES (1,2,3)
ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id), c=3;