1.查询没有选修课名称为“语文”的学生姓名及选修课程
2.列出每门课程名称和平均成绩,并按照升序排序
3.查询选了2门课以上的学生姓名及学生选修的课程总数

1.

SELECT s.s_name,c.c_name FROM 

student s,chosen_class cs,class c WHERE cs.s_id IN

(

    SELECT s_id FROM student WHERE s_id  NOT IN

  (

     (SELECT s_id FROM chosen_class cs WHERE c_id IN 

        ( SELECT c_id FROM class WHERE c_name='语文')

     )

  )

) AND c.c_id=cs.c_id AND s.s_id=cs.s_id

2.

SELECT c.c_name,AVG(cs.grade) 平均成绩 FROM class c LEFT JOIN

chosen_class cs ON c.c_id=cs.c_id GROUP BY(cs.c_id) ORDER BY AVG(cs.grade)

3.

SELECT s.s_name,COUNT(cs.s_id) 选修课总数 FROM 

student s,chosen_class cs,class c WHERE s.s_id IN

(SELECT s_id FROM chosen_class GROUP BY(s_id) 

HAVING COUNT(s_id)>1)

AND c.c_id=cs.c_id AND s.s_id=cs.s_id GROUP BY(cs.s_id)

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐