1. 程式人生 > >mysql練習題

mysql練習題

條件 前三 要求 course 最好的 bsp mysq 刪除 女生

1、自行創建測試數據

2、查詢“生物”課程比“物理”課程成績高的所有學生的學號;

3、查詢平均成績大於60分的同學的學號和平均成績;

4、查詢所有同學的學號、姓名、選課數、總成績;

select student_id,sname,count(corse_id),sum(number) from score
left join course on score.corse_id=course.cid
left join student on score.student_id=student.sid
left join class on student.class_id=class.cid
left join teacher on course.teacher_id=teacher.tid
group by student_id;

5、查詢姓“李”的老師的個數;

select count(tid),tname from teacher where tname like ‘波%‘ group by tname;

6、查詢沒學過“葉平”老師課的同學的學號、姓名;

mysql> select student_id,cname from score
-> left join course on score.corse_id=course.cid
-> left join student on score.student_id=student.sid
-> left join class on student.class_id=class.cid
-> left join teacher on course.teacher_id=teacher.tid
-> where tname!="葉平";

7、查詢學過“001”並且也學過編號“002”課程的同學的學號、姓名;

8、查詢學過“葉平”老師所教的所有課的同學的學號、姓名;

mysql> select student_id,cname from score
-> left join course on score.corse_id=course.cid
-> left join student on score.student_id=student.sid
-> left join class on student.class_id=class.cid
-> left join teacher on course.teacher_id=teacher.tid
-> where tname="葉平";

9、查詢課程編號“002”的成績比課程編號“001”課程低的所有同學的學號、姓名;

10、查詢有課程成績小於60分的同學的學號、姓名;

select student_id,sname from score
left join course on score.corse_id=course.cid
left join student on score.student_id=student.sid
left join class on student.class_id=class.cid
left join teacher on course.teacher_id=teacher.tid
where number<60;

11、查詢沒有學全所有課的同學的學號、姓名;

12、查詢至少有一門課與學號為“001”的同學所學相同的同學的學號和姓名;

13、查詢至少學過學號為“001”同學所選課程中任意一門課的其他同學學號和姓名;

14、查詢和“002”號的同學學習的課程完全相同的其他同學學號和姓名;

15、刪除學習“葉平”老師課的SC表記錄;

16、向SC表中插入一些記錄,這些記錄要求符合以下條件:①沒有上過編號“002”課程的同學學號;②插入“002”號課程的平均成績;

17、按平均成績從低到高顯示所有學生的“語文”、“數學”、“英語”三門的課程成績,按如下形式顯示: 學生ID,語文,數學,英語,有效課程數,有效平均分;

18、查詢各科成績最高和最低的分:以如下形式顯示:課程ID,最高分,最低分;

19、按各科平均成績從低到高和及格率的百分數從高到低順序;

20、課程平均分從高到低顯示(現實任課老師);

21、查詢各科成績前三名的記錄:(不考慮成績並列情況)

22、查詢每門課程被選修的學生數;

23、查詢出只選修了一門課程的全部學生的學號和姓名;

24、查詢男生、女生的人數;

25、查詢姓“張”的學生名單;

26、查詢同名同姓學生名單,並統計同名人數;

27、查詢每門課程的平均成績,結果按平均成績升序排列,平均成績相同時,按課程號降序排列;

28、查詢平均成績大於85的所有學生的學號、姓名和平均成績;

29、查詢課程名稱為“數學”,且分數低於60的學生姓名和分數;

30、查詢課程編號為003且課程成績在80分以上的學生的學號和姓名;

31、求選了課程的學生人數

32、查詢選修“楊艷”老師所授課程的學生中,成績最高的學生姓名及其成績;

33、查詢各個課程及相應的選修人數;

34、查詢不同課程但成績相同的學生的學號、課程號、學生成績;

35、查詢每門課程成績最好的前兩名;

36、檢索至少選修兩門課程的學生學號;

37、查詢全部學生都選修的課程的課程號和課程名;

38、查詢沒學過“葉平”老師講授的任一門課程的學生姓名;

39、查詢兩門以上不及格課程的同學的學號及其平均成績;

40、檢索“004”課程分數小於60,按分數降序排列的同學學號;

41、刪除“002”同學的“001”課程的成績;

mysql練習題