Mysql 如何检查count语句是否返回特定值

Mysql 如何检查count语句是否返回特定值,mysql,sql,Mysql,Sql,这可能非常简单,我有一段时间没有使用sql了,遇到了这个问题。基本上,作为更大语句的一部分,如果内部select语句的计数等于3,我只想从select语句返回一行。我该怎么做 例如 select rev.name, s.title from reviewer rev, song s, rating r where (r.rID = rev.rID) and (r.mID = s.sID) and ...[rest goes here]; 其中“rest”是指我只想在reviewerrev已

这可能非常简单,我有一段时间没有使用sql了,遇到了这个问题。基本上,作为更大语句的一部分,如果内部select语句的计数等于3,我只想从select语句返回一行。我该怎么做

例如

select rev.name, s.title 
from reviewer rev, song s, rating r 
where (r.rID = rev.rID) and (r.mID = s.sID) and ...[rest goes here];
其中“rest”是指我只想在reviewer
rev
已经对歌曲
s
进行了两次审阅,并且r.value在第一次时更大时返回(我们将第一次表示为评分最早的
r.date\u


这显然是一个计数和比较,但我不知道如何用正确的SQL语法来表达。如果您能提供任何帮助,我们将不胜感激。谢谢您,我不确定您的示例是否提供了足够的信息

但听起来你需要一个“拥有”条款

e、 g


@marc_对此表示感谢。就像我说的,已经有一段时间了:)我们也非常感谢所有建议的改进
SELECT rev.name, s.title, count(r.mId)
FROM reviewer rev, song s, rating r 
WHERE (r.rID = rev.rID) AND (r.mID = s.sID) 
GROUP BY rev.name, s.title
HAVING count(r.mId) = 3