update mytable set count=last_insert_id(counter+1) where key='mykey'
Alors
select last_insert_id()
last_insert_id()
peut recevoir un argument pour le "définir" (et renvoyer cette valeur), et l'appeler sans argument renverra à nouveau la valeur. L'état interne utilisé par last_insert_id()
est par connexion, ce qui signifie que la même update
déclaration émise sur une autre connexion n'affectera pas la première.
Référence :last_insert_id()