• 2023-04-11见sql问题总结四
    --查询各个课程及相应的选修人数;SELECTaa.cid,aa.cname,bb.numFROM(SELECTcid,cnameFROMcourse)aaINNERJOIN(SELECTCOUNT(student_id)asnum,corse_idFROMscoreGROUPBYcorse_id)bbonaa.cid=bb.corse_id--查询不同课程但成绩相同的学生的学号、课程
  • 2023-04-07常见sql问题总结三
    --查询各科成绩前三名的记录:(不考虑成绩并列情况)--ROW_NUMBER()函数方便统计排序。--ROW_NUMBER()OVER(PARTITIONBYSC.corse_idORDERBYSC.numberDESC)RN根据corse_id分组在进行倒叙排序SELECT*FROM(SELECTSC.student_idSNO,
  • 2023-03-30常见SQL总结二
    --查询没有学全所有课的同学的学号、姓名;SELECTsid,snameFROMstudentstu,(SELECTCOUNT(sid)asnum,student_idFROMscoreGROUPBYstudent_id)t1,--查出每个人的学习课程数量(SELECTCOUNT(cid)asnumFROMcourse)t2--再查出所有课程数量WHEREt2.num>t1.numand