班级表
ID 班级名称
1 高一1班
2 高一2班
3 高二1班
学生表
ID 学生姓名 班级ID
1 张三 1,3
2 李四 2,3一个班级可以对应多个学生,一个学生也可以加入多个班级,比如我要查询高二2班里面有多少学生,请问我要怎么SQL要怎么写?
ID 班级名称
1 高一1班
2 高一2班
3 高二1班
学生表
ID 学生姓名 班级ID
1 张三 1,3
2 李四 2,3一个班级可以对应多个学生,一个学生也可以加入多个班级,比如我要查询高二2班里面有多少学生,请问我要怎么SQL要怎么写?
From 班级表 a inner join 学生表 b on INSTR(','&b.班级ID&',',','&a.ID&',')>0
Where 班级名称='高二2班'
From 班级表 a , 学生表 b
Where a.班级名称='高二2班'
and INSTR(','&b.班级ID&',',','&a.ID&',')>0
或者
Select count(*)
From 班级表 a , 学生表 b
Where a.班级名称='高二2班'
and ','&b.班级ID&',' like '%,'&a.ID&',%'
select class_id from class_tb where class_name='高二2班'
)
From 班级表 a inner join 学生表 b on find_in_set(a.ID,b.班级ID)
Where 班级名称='高二2班'
Select count(a.id) From 班级表 a inner join 学生表 b on find_in_set(a.ID,b.班级ID)
Where 班级名称='高二2班'