-- 1、查询"01"课程比"02"课程成绩高的学生的信息及课程分数 
	
select a.* ,b.s_score as 01_score,c.s_score as 02_score from 
student a 
	join score b on a.s_id=b.s_id and b.c_id='01'
	left join score c on a.s_id=c.s_id and c.c_id='02' or c.c_id = NULL where b.s_score>c.s_score

首先是查出所有的01课程的成绩 join 代表共同

select a.* ,b.s_score as 01_score  from 
student a 
	join score b on a.s_id=b.s_id and b.c_id='01'

以上查出来的就是一个虚拟表 ,已经是全部的01课程的学生的成绩信息了。以这个虚拟表再联合成绩表,查出02课程的所有的信息

select a.* ,b.s_score as 01_score,c.s_score as 02_score from 
student a 
	join score b on a.s_id=b.s_id and b.c_id='01'
	以上是虚拟表,下面是和成绩表合并,查出02课程的全部的信息
	left join score c on a.s_id=c.s_id and c.c_id='02' 

以上就是一个大的虚拟表,里面有01 课程的成绩,有02课程的成绩

现在就进行比较

where b.s_score>c.s_score

成绩进行比较,在一个虚拟表里面进行比较。就可以了