请教大家一个SQL的问题.

WBOY
Freigeben: 2016-06-23 14:01:35
Original
869 Leute haben es durchsucht

有一个test数据库,里面有一张学员表student,有三个字段,class,name,score,分别表示班级,姓名,成绩,问:查询每个班级的及格人数和不及格人数,输出格式是class,及格人数,不及格人数

这个该怎么写呢?


回复讨论(解决方案)

select class,sum(case score >=60 then 1 else 0 end) as '及格人数',sum(case score < 60 then 1 else 0 end) as '不及格人数'from student group by class
Nach dem Login kopieren

select class,(select count(*) from student where class=stu.class and score >=60 ) as '及格人数',(select count(*) from student where class=stu.class and score <60 ) as '及格人数',from student stu group by class
Nach dem Login kopieren

哦,写错了。更正:

select class,(select count(*) from student where class=stu.class and score >=60 ) as '及格人数',(select count(*) from student where class=stu.class and score <60 ) as '不及格人数',from student stu group by class
Nach dem Login kopieren

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage