首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

哪位高手能告诉小弟我这句SQL的原理啊

2012-06-16 
谁能告诉我这句SQL的原理啊~~~Select StuId,StuName From tblStudent st Where not exists(Select CourseI

谁能告诉我这句SQL的原理啊~~~
Select StuId,StuName From tblStudent st Where not exists
(
Select CourseID From tblCourse cu Inner Join tblTeacher tc On cu.TeaID=tc.TeaID 
Where tc.TeaName='叶平'And CourseID not in 
(Select CourseID From tblScore Where StuID=st.StuID)
)
表结构如下:
tblStudent (stuid,stuname,stusex,stuage);
tblCourse (stuid,courseid,score);
tblTeacher (teaid,teaname,courseid);

[解决办法]

SQL code
Select StuId,StuName From tblStudent st Where not exists --找学生信息部在(2) 里面的学生(    Select CourseID     From tblCourse cu     Inner Join tblTeacher tc On cu.TeaID=tc.TeaID  --去课程表 找到‘叶平’老师 并且 课程id 不在  (1) 里面的CourseID    Where tc.TeaName='叶平'          And CourseID not in  (Select CourseID From tblScore Where StuID=st.StuID)  --成绩表StuID和Student表StuID对应Course)--查看方法:从内往外----1:--成绩表StuID和Student表StuID对应CourseID--2:--去课程表 找到‘叶平’老师 并且 课程id 不在  (1) 里面的CourseID--3:--找学生信息部在(2) 里面的学生 

热点排行