我有一个任务要计算评论计数>x的用户数量。
我的SQL查询如下所示:
SELECT users.id,
users.display_name,
(SELECT COUNT(*)
FROM cms_comments
WHERE cms_comments.author_id = users.id) AS comments_count
FROM users
HAVING comments_count > 150;
一切正常,它正确地显示了所有用户。但我需要查询返回所有这些用户的数量(只有一行)。我不知道如何更改此查询以使其生成正确的数据。
最佳答案
我想这就是你要找的:
select count(*) from (
select u.id from users u
join cms_comments c on u.id = c.author_id
group by u.id
having count(*) > 150
) final