mysql通过表Course 统计表Teacher中每个教师(TNO)共教了几门课程,在表 Teacher_Course 添加 教师的TNO与教的课程数量
时间: 2023-06-12 19:07:00 浏览: 139
course、score、student、teacher数据.sql
可以使用以下 SQL 语句实现:
```
SELECT TNO, COUNT(*) AS course_count
FROM Teacher_Course
GROUP BY TNO;
```
这条语句将会从 `Teacher_Course` 表中查询出每个教师(TNO)教授的课程数量,首先使用 `GROUP BY` 对 TNO 进行分组,然后使用 `COUNT(*)` 统计每个分组中的记录数量,即教师教授的课程数量。最后使用 `AS` 为统计结果指定别名 `course_count`。
如果需要将统计结果保存到 `Teacher` 表中,可以使用以下 SQL 语句:
```
UPDATE Teacher
SET course_count = (
SELECT COUNT(*)
FROM Teacher_Course
WHERE Teacher_Course.TNO = Teacher.TNO
);
```
这条语句将会更新 `Teacher` 表中的 `course_count` 字段,将该字段设置为每个教师(TNO)教授的课程数量。使用子查询从 `Teacher_Course` 表中查询出每个教师(TNO)教授的课程数量,然后通过 `WHERE` 子句将查询结果限制为匹配当前记录的教师。
阅读全文