我有二张表
表1:老师表 字段 TeacherID Name(班主任姓名)
01 李老师
02 阳老师
03 黄老师
表2:Student(学生表) 字段 StudentID Name TeacherID Course(选课)
0101 张三 01 计算机
0102 李四 01 计算机
0201 五王 02 体育
0202 黄明 02 计算机我现在的要求就是:
SQL语句查询:返回既有参加计算机的学生选课又有参加体育选课的学生的班主任姓名
表1:老师表 字段 TeacherID Name(班主任姓名)
01 李老师
02 阳老师
03 黄老师
表2:Student(学生表) 字段 StudentID Name TeacherID Course(选课)
0101 张三 01 计算机
0102 李四 01 计算机
0201 五王 02 体育
0202 黄明 02 计算机我现在的要求就是:
SQL语句查询:返回既有参加计算机的学生选课又有参加体育选课的学生的班主任姓名
where a.teacherid=b.teacherid and b.course='计算机' and b.course='体育'
:select * from 老师表 where teacherid in(select teacherid from student where course in('计算机','体育'))
declare @StudentTalbe Table( StudentID varchar(20) , [Name] varchar(20),TeacherID varchar(20),Course varchar(20))
insert into @TeacherTalbe values( '01','李老师')
insert into @TeacherTalbe values( '02','阳老师')
insert into @TeacherTalbe values( '03','黄老师')
insert into @StudentTalbe values( '0101' ,'张三' ,'01','计算机')
insert into @StudentTalbe values( '0102' ,'李四' ,'01','计算机')
insert into @StudentTalbe values( '0201' ,'五王' ,'02','体育')
insert into @StudentTalbe values( '0202' ,'黄明' ,'02','计算机')
select [Name] from @TeacherTalbe where TeacherID in(
select TeacherID from @StudentTalbe
where Course = '计算机' or Course ='体育'
group by TeacherID
having Count( distinct Course) =2 )