Ответ 1
update mytable set count=last_insert_id(counter+1) where key='mykey'
Тогда
select last_insert_id()
last_insert_id()
может быть передан аргумент для 'set' it (и вернуть это значение), и вызов его без аргумента снова вернет значение. Внутреннее состояние, используемое last_insert_id()
, относится к соединению, что означает, что тот же оператор update
, выпущенный в другом соединении, не будет влиять на первый.
Ссылка: last_insert_id()