【问题标题】:query to count students [closed]查询学生人数[关闭]
【发布时间】:2020-08-08 23:55:34
【问题描述】:
表 - 类 ========================== 编号 |姓名 1 | 1级 2 | 2 级 表 - 教师 ========================== 编号 |姓名 1 |老师1 2 |老师2 表 - 班级教师 ========================== 编号 |教师编号 |班级号 1 | 1 | 1 2 | 1 | 2 表 - 学生 ========================== 编号 |姓名 |班级号 1 |学生 1 | 1 2 |学生 2 | 2

期待结果

编号 |姓名 |学生总数 1 |老师1 | 2 2 |老师2 | 0

【问题讨论】:

标签: mysql sql join count left-join


【解决方案1】:

这看起来像left joins 和聚合:

select t.id, t.name, count(s.id) no_students
from teachers t
left join class_teachers ct on ct.teacher_id = t.id
left join students s on s.class_id = ct.class_id
group by t.id, t.name

【讨论】:

    猜你喜欢
    • 2022-11-03
    • 2014-01-04
    • 2018-11-16
    • 2021-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-08
    • 1970-01-01
    相关资源
    最近更新 更多