用SQL语句查询一个特定老师学生中男生女生各多少人

用SQL语句查询一个指定老师学生中男生女生各多少人

  • 一 表结构
    • 学生表
    • 教师表
    • 关系表
    • SQL语句
    • 结果
    • 涉及知识

一 表结构

学生表

用SQL语句查询一个特定老师学生中男生女生各多少人_第1张图片

教师表

教师表

关系表

用SQL语句查询一个特定老师学生中男生女生各多少人_第2张图片

SQL语句

select 
count(case when student.sex = 1 then student.sex end) as 'man',
count(case when student.sex = 0 then student.sex end) as 'woman'
from student where student.studentid in 
(
select studentId from relation where relation.teacherId 
= (select teacher.teacherId from teacher where name = "Tom")
)

结果

结果图

涉及知识

1. in 操作符
2. where 条件
3. count() 统计
4. case when ->MySQL 高级函数 菜鸟教程有详细内容 https://www.runoob.com/mysql/mysql-functions.html

你可能感兴趣的:(数据库,mysql)