如何使用带有count(*)的select语句

时间:2014-03-09 18:56:48

标签: sql-server

我有一些表

Room(CodeR, NameR)

Title(CodeT,NameT)

Member(ID,Name, Salary, Sex, CodeR, CodeT)

我想写sql来选择成员少于5的Roooms并打印这个房间的所有成员。

请帮我解决这个问题

请帮我删除这个主题。我不能问任何问题。

1 个答案:

答案 0 :(得分:1)

select R.CodeR, NameR, m.Id, m.Name FROM
Room R INNER JOIN Member m on
R.CodeR = m.CodeR
WHERE R.CodeR in 
(SELECT iM.CodeR FROM Member iM GROUP BY iM.CodeR HAVING COUNT(*) <5)

首先拉出所有成员不少于5的房间

SELECT iM.CodeR FROM Member iM GROUP BY iM.CodeR HAVING COUNT(*) <5

然后根据需要使用上述结果提取房间和会员信息。

select R.CodeR, NameR, m.Id, m.Name FROM
Room R INNER JOIN Member m on
R.CodeR = m.CodeR
WHERE R.CodeR in (X, Y, Z) //X, Y, Z will be replaced by subquery