gpt4 book ai didi

sql - 计算列分组依据

转载 作者:行者123 更新时间:2023-12-04 01:35:46 25 4
gpt4 key购买 nike

我有如下的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怎么写?

最佳答案

尽管您似乎没有显示所有表格,但我只能假设每个学生还有另一个实际入学表格

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

我对您的“姓名”列的解释是学生的姓名,而不是类(class)实际教师的姓名,因此我的子选择/加入。否则,与其他人一样,只需使用 COUNT(*) 作为第三列即可。

关于sql - 计算列分组依据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2698108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com