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删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM