sql练习-查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩


在网上看见几个sql练习的题目,又搜了一些其他的解法,写一下自己的理解。

  创建四张表:Course(课程)、SC(成绩)、Student(学生)、Teacher(老师)


 

  Student中包括sid、sname、sage、ssex;

  SC中包括sid、cid、score;

  我的思路比较简单,从SC中提出sid、AVG(score)到t1,再连接到Student

 

1 SELECT t1.sid AS 学号,sname AS 姓名,score AS 平均分 FROM
2     (SELECT sid,AVG(score) AS score from SC GROUP BY sid HAVING AVG(score) < 60)t1
3     LEFT JOIN Student ON t1.sid = Student.sid

 

 结果如下:

 

 


 

  各位若有建议与疑问,欢迎提出讨论;若有什么不对之处,欢迎批评指正。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



猜您在找 练习8--查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩 【sql:练习题11】查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩 查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩 从SC表中选取score小于60的,并group by sid,having count 大于1 【sql: 练习题 30,31】查询存在不及格的课程,查询课程编号为 01 且课程成绩在 80 分及以上的学生的学号和姓名 查询有2门及以上不及格科目的学生姓名及其平均成绩 有一个班4个学生,5门课程 1求第1门课程的平均分; 2找出有两门以上课程不及格的学生,输出他们的学号和全部课程成绩及平均成绩; 3找出平均成绩在90分以上或全部课程成绩在85分以上的学生。4分别编3个函数实现以上3个要求。 有一个班4个学生,5门课程 ①求第1门课程的平均分;②找出有两门以上课程不及格的学生,输出他们的学号和全部课程成绩及平均成绩; ③找出平均成绩在90分以上或全部课程成绩在85分以上的学生 分别编3个函数实现以上3个要求 有一个班4个学生,5门课程①求第1门课程的平均分; ②找出有两门以上课程不及格的学生,输出他们的学号和全部课程成绩及平均成绩; ③找出平均成绩在90分以上或全部课程成绩在85分以上的学生 10.15有一个班4个学生,5门课。(1)求第一门课的平均分;(2)找出有两门以上课程不及格的学生,输出他们的学号和全部课程成绩及平均成绩;(3)找出平均成绩在90分以上或全部课程成绩在85分以上的学生。分别编3个函数实现上3个要求。 MySQL查询两门及两门以上不及格的学生,显示姓名
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM