计算一列的重复次数

时间:2014-10-28 19:34:00

标签: mysql

我无法成功编写此查询,但尚未找到任何资源。

我有一个有两列的表。该表看起来有点像这样:

|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  |

非常感谢任何提示。

1 个答案:

答案 0 :(得分:0)

您想在此处使用COUNT(*)聚合函数,并按教师列分组。

试试这个:

SELECT teacher, COUNT(*) as numStudents
FROM myTable
GROUP BY teacher;

这将按教师对您桌子中的所有行进行分组,并计算该组中的行数(有效计算学生人数)。

以下是Aggregate Functions的更多信息。