微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

计数列分组依据

如何解决计数列分组依据

尽管您似乎并未显示所有表格,但我只能假设还有每位学生的实际入学表格

select a.Dept, count(*) as TotalStudents
  from students a
  group by a.Dept

如果您想要与每个学生相关联的每个部门的总数(这没有意义),则可能必须这样做…

select a.Dept, a.Name, b.TotalStudents
    from students a,
        ( select Dept, count(*) TotalStudents
             from students
             group by Dept ) b
    where a.Dept = b.Dept

我对“姓名”列的解释是学生的姓名,而不是班级实际讲师的姓名,因此,我进行子选择/加入。否则,就像其他人一样,只需要使用COUNT(*)作为第三列即可。

解决方法

我有如下的SQL:

select a.dept,a.name
  from students a
 group by dept,name
 order by dept,name

并得到结果:

dept   name
-----+---------
CS   | Aarthi
CS   | Hansan
EE   | S.F
EE   | Nikke2

我想总结每个部门的学生人数,如下所示:

dept   name        count
-----+-----------+------  
CS   | Aarthi    |  2
CS   | Hansan    |  2
EE   | S.F       |  2
EE   | Nikke2    |  2
Math | Joel      |  1

我该如何编写sql?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。