我无法成功编写此查询,但尚未找到任何资源。
我有一个有两列的表。该表看起来有点像这样:
|student|teacher|
| 5314 | 656 |
| 4189 | 671 |
| 4506 | 671 |
| 4515 | 671 |
| 3754 | 756 |
| 3760 | 756 |
| 1066 | 781 |
我希望结果集看起来像这样:
|teacher|count|
| 656 | 1 |
| 671 | 3 |
| 756 | 2 |
| 781 | 1 |
非常感谢任何提示。
答案 0 :(得分:0)
您想在此处使用COUNT(*)聚合函数,并按教师列分组。
试试这个:
SELECT teacher, COUNT(*) as numStudents
FROM myTable
GROUP BY teacher;
这将按教师对您桌子中的所有行进行分组,并计算该组中的行数(有效计算学生人数)。
以下是Aggregate Functions的更多信息。