我有一个具有Key列和Counter列的表.我需要做这样的事情:
SELECT counter=counter+1 FROM table WHERE key='mykey'
Run Code Online (Sandbox Code Playgroud)
基本上,我需要增加Counter列并返回新值.我怎么能在MySQL 5.5中这样做?
Joe*_*ant 26
update mytable set count=last_insert_id(counter+1) where key='mykey'
Run Code Online (Sandbox Code Playgroud)
然后
select last_insert_id()
Run Code Online (Sandbox Code Playgroud)
last_insert_id()
可以传递一个参数来'set'它(并返回该值),并且在没有参数的情况下调用它将再次返回该值.使用的内部状态last_insert_id()
是每个连接,这意味着update
在另一个连接上发出的相同语句不会影响第一个.
参考: last_insert_id()