17
我有一個包含Key列和Counter列的表。我需要這樣做:如何增加計數器並返回MySQL中的值
SELECT counter=counter+1 FROM table WHERE key='mykey'
基本上,我需要增加計數器列,並返回新的值。我如何在MySQL 5.5中執行此操作?
我有一個包含Key列和Counter列的表。我需要這樣做:如何增加計數器並返回MySQL中的值
SELECT counter=counter+1 FROM table WHERE key='mykey'
基本上,我需要增加計數器列,並返回新的值。我如何在MySQL 5.5中執行此操作?
update mytable set count=last_insert_id(counter+1) where key='mykey'
然後
select last_insert_id()
last_insert_id()
可以傳遞一個參數「設置」它(並返回值),並調用它不帶任何參數將再次返回值。 last_insert_id()
使用的內部狀態是每個連接,這意味着在另一個連接上發出的相同的update
聲明不會影響第一個連接。
哦,永遠不知道, – zerkms 2011-05-27 14:32:55
此表將非常頻繁使用+1,如果另一個更新之前選擇時所發生的? last_insert_id的值不會是錯誤的嗎? – 2011-05-27 14:35:23
回答者說:'last_insert_id()'是每個連接。那麼,其他連接也不會影響你。如果**你**做任何插入/替換,那麼是的,這將是錯誤的。 – Johan 2011-05-27 14:39:24