我有mysql表帖子
Posts
PostId (int)
PostTitle (varchar)
PostContent (text)
PostHits (int)
PostStatus (varchar)
我在选择查询时阅读了这些记录,例如
SELECT * FROM posts WHERE PostStatus LIKE 'ALIVE';
如果所有记录都符合 WHERE 子句,是否有可能在每次选择时增加其 PostHits
值? 如果是,最好的方法是什么,目前我正在使用两个查询选择,然后根据where id in(all selected posts ids)
进行更新。我正在寻找单一查询解决方案。
这是你需要的吗?
UPDATE posts
SET PostHits = PostHits + 1
WHERE PostStatus LIKE 'ALIVE'
仅使用SELECT
SELECT
PostId,
PostTitle,
PostContent,
PostHits + 1 AS PostHits,
PostStatus
FROM posts
WHERE PostStatus LIKE 'ALIVE'