我有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)
进行更新。我正在寻找单一查询解决方案。
答案 0 :(得分:2)
这是你需要的吗?
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'