MySQL Update Column +1?

时间:2010-10-05 18:21:34

标签: mysql sql sql-update aggregate-functions

我想知道将列更新为+1的最简单方法是什么?我将根据用户提交新帖子的时间更新某个类别的帖子数。

感谢。

7 个答案:

答案 0 :(得分:33)

最简单的方法是存储计数,依靠COUNT聚合函数来反映数据库中的值:

   SELECT c.category_name,
          COUNT(p.post_id) AS num_posts
     FROM CATEGORY c
LEFT JOIN POSTS p ON p.category_id = c.category_id

您可以create a view来处理上面提到的查询,这样您就可以像查询表一样查询视图...

但如果您已设置存储号码,请使用:

UPDATE CATEGORY
   SET count = count + 1
 WHERE category_id = ?

..替换“?”具有适当的价值。

答案 1 :(得分:27)

你可以这样做:

UPDATE categories SET posts = posts + 1 WHERE category_id = 42;

答案 2 :(得分:8)

怎么样:

update table
set columnname = columnname + 1
where id = <some id>

答案 3 :(得分:5)

update post set count = count + 1 where id = 101

答案 4 :(得分:0)

update TABLENAME
set COLUMNNAME = COLUMNNAME + 1
where id = 'YOURID'

答案 5 :(得分:0)

如何更新订单列Count值

试试

  UPDATE order SET                                      
    Order_Count = Order_Count + 100
  WHERE 
    Order_ID = '1234'

答案 6 :(得分:-2)

update table_name set field1 = field1 + 1;