求一SQL查询语句!

来源:百度知道 编辑:UC知道 时间:2024/05/21 20:12:43
例:
表一CLASS :
ID CLASSNAME
1 class1
2 class2
3 class3

表二STUDENT:
ID Name CLASSNAME
1 A class1
2 B class1
3 C class2
4 D class3
5 F class2

求 每一班的人数
结果如:
classname number
class1 2
class2 2
class3 1
如果在CLASS表里再加一条记录class4
能不能列出所有班级的人数
如:
class1 2
class2 2
class3 1
class4 0

你们的答案都能运行,但是查不出所有班级的人数,还有其它方法吗
gg152326的结果是所有班级的人数,但是STUDENT中没有CLASS4记录,但结果中
CLASS4人数是1
应该是0啊,这是为什么

终于知道是什么原因了,这是最后正确结果:
SELECT class.classname AS 班级姓名, COUNT(student.id) AS 人数
FROM class LEFT OUTER JOIN
student ON class.classname = student.classname
GROUP BY class.classname
大家可以参照一下朋友们的答案,发现有什么不一样.

select class.classname '班级名',count(*) '人数'
from class left join student on class.classname=student.classname
group by class.classname

SELECT CLASSNAME,COUNT(*) as number FROM STUDENT GROUP BY CLASSNAME HAVING COUNT(*)>=1”

SELECT CLASSNAME,COUNT(*) as number FROM STUDENT GROUP BY CLASSNAME HAVING COUNT(*)>=1”