请帮我处理这个问题。
我有个桌子学生,看上去:
*id, name, surname, year, course*
1, John, Johnson, 3, Economy
2, Lara, Croft, 2, Biology
3, Mark, Jones, 3, Economy
4, Jim, Smith, 1, IT
5, Sarah, Kennedy, 1, IT
6, Matt, Damon, 3, Economy并希望得到所有有学生参加的课程,例如:
*course, count*
Economy, 3
IT, 2
Biology, 1发布于 2015-10-03 14:46:09
您不会为此使用count(distinct ...),只需在课程中分组使用count()
select
cource,
count(*)
from
Students
group by
cource
order by
cource如果您想要在一个组中进行不同的计数,例如计算year的不同值(在所有记录的隐式组中),那么使用year是很有用的:
select
count(distinct year)
from
Students这将给出结果3,因为有三个不同的值1、2和3。
https://stackoverflow.com/questions/32923762
复制相似问题