如何递增计数器并在MySQL中返回值

时间:2011-05-27 14:27:19

标签: mysql select

我有一个包含Key列和Counter列的表。我需要做这样的事情:

SELECT counter=counter+1 FROM table WHERE key='mykey'

基本上,我需要增加Counter列并返回新值。我怎么能在MySQL 5.5中做到这一点?

1 个答案:

答案 0 :(得分:25)

update mytable set count=last_insert_id(counter+1) where key='mykey'

然后

select last_insert_id()

last_insert_id()可以传递一个参数来“设置”它(并返回该值),并且在没有参数的情况下调用它将再次返回该值。 last_insert_id()使用的内部状态是每个连接,这意味着在另一个连接上发出的相同update语句不会影响第一个。{/ p>

参考:last_insert_id()