我想知道将列更新为+1的最简单方法是什么?我将根据用户提交新帖子的时间更新某个类别的帖子数。
感谢。
答案 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;