2011-12-20 61 views
0
SELECT c.cname, COUNT(e.ccode) 
FROM class c 
INNER JOIN enrolled e ON e.ccode = c.ccode 
WHERE room = 'MB100' 
AND e.ccode = < 10; 

我试图找到MB100房间里有少于10名学生的课程名称,我该怎么办?sql计数函数加入

回答

2

你缺少group by c.cname,试试这个:

SELECT c.cname, COUNT(e.ccode) 
FROM class c 
INNER JOIN enrolled e ON e.ccode = c.ccode 
WHERE room = 'MB100' 
Group by c.cname 
Having e.ccode =< 10; 
+1

+1没有发现这是失踪了。但是你需要使用'HAVING COUNT(e.ccode)<10; ' – 2011-12-20 16:05:48

+0

@MartinSmith谢谢,其实一旦我看到你的答案,我删除了我的,+ 77k repatution让我怀疑我的回答:) – 2011-12-20 16:13:15