22,300
社区成员




问题1:
select st.stuid,st.stuName,cl.className,co.courseName,min(sc.score)
from
class cl,student st,score sc,course co
WHERE
sc.stuid=st.stuId AND
st.classId = cl.classId AND
sc.courseid =co.courseid
group by cl.classId,co.courseid
问题2:
select AVG(sc.score),cl.className,co.courseName
from
class cl,student st,score sc,course co
WHERE
sc.stuid=st.stuId AND
st.classId = cl.classId AND
sc.courseid =co.courseid
group by cl.classId,co.courseid
问题3 :
select s.sid,s.sname,ssc.score, cco.courseName from
(select sst.stuid sid , sst.stuName sname
from student sst,class ccl
where sst.classid=ccl.classid and sst.classid='1' and ccl.className='class 1') as s
left join score ssc on ssc.stuid=s.sid
left join course cco on cco.courseid =ssc.courseid
--问题1
select B.stuid,B.stuname,C.classname,D.coursename,A.score
from score A
join student B on A.stuid=B.stuid
join class C on A.classid=C.classid
join course D on A.courseid=D.course
where not exists (select 1 from from score
join student on score.stuid=student.stuid
where B.classid=student.classid and score.courseid=A.courseid and score.score<A.score)
--问题2
select max(C.classname) as classname,max(D.coursename) as coursename,avg(A.score) as avg_score
from score A
join student B on A.stuid=B.stuid
join class C on A.classid=C.classid
join course D on A.courseid=D.course
group by A.course,B.classid
--问题3
select stuid,stuname,coursename,score
from student A
left join score B on A.stuid=B.stuid
left join course C on B.courseid=C.courseid
left join class D on A.classid=D.classid
where classid='1' and classname='1'