mysql練習題

quan062發表於2020-10-18

參考連結:https://blog.csdn.net/weixin_46288842/article/details/108026834?

mysql練習題

學生表:student

課程表:course

成績表:score

教師表:teacher

習題:

1、查詢Student表中的所有記錄的Sname、Ssex和Class列。

SELECT sname,ssex,class FROM student;

 

2、查詢教師所有的單位即不重複的Depart列。

SELECT depart FROM teacher GROUP BY depart;

3、查詢Student表的所有記錄。

SELECT * FROM student;

 

4、查詢Score表中成績在60到80之間的所有記錄。

SELECT * FROM score WHERE Degree BETWEEN 60 AND 80;

 

5、查詢Score表中成績為85,86或88的記錄。

SELECT * FROM score WHERE Degree in(85,86,88);

 

6、查詢Student表中“95031”班或性別為“女”的同學記錄。

SELECT * FROM student WHERE class = 95031 or ssex = '女';

 

7、以Class降序查詢Student表的所有記錄。

SELECT * FROM student ORDER BY class DESC;

8、以Cno升序、Degree降序查詢Score表的所有記錄。

SELECT * FROM score ORDER BY Cno,Degree desc;

 

9、查詢“95031”班的學生人數。

SELECT COUNT(class) FROM student WHERE class = 95031 GROUP BY class;

 

10、 查詢Score表中的最高分的學生學號和課程號。(子查詢或者排序)

SELECT Sno,Cno FROM score ORDER BY Degree DESC LIMIT 1;    # 排序

SELECT Sno,Cno FROM score where degree = (SELECT MAX(Degree) FROM score);  # 子查詢

 

11、查詢每門課的平均成績。

SELECT course.Cname,AVG(score.degree) 平均成績 FROM 
score
JOIN course on score.Cno = course.Cno
GROUP BY course.Cname;

 

12、查詢Score表中至少有5名學生選修的並以3開頭的課程的平均分數。

 

13、查詢分數大於70,小於90的Sno列。

14、查詢所有學生的Sname、Cno和Degree列。

15、查詢所有學生的Sno、Cname和Degree列。

16、查詢所有學生的Sname、Cname和Degree列。

17、 查詢“95033”班學生的平均分。

18、 假設使用如下命令建立了一個grade表:

create table grade(low int(3),upp int(3),`rank` char(1));
insert into grade values(90,100,‘A’);
insert into grade values(80,89,‘B’);
insert into grade values(70,79,‘C’);
insert into grade values(60,69,‘D’);
insert into grade values(0,59,‘E’);

   現查詢所有同學的Sno、Cno和rank列。

19、 查詢選修“3-105”課程的成績高於“109”號同學成績的所有同學的記錄。

20、查詢score中選學多門課程的同學中分數為非最高分成績的記錄。

21、查詢成績高於學號為“109”、課程號為“3-105”的成績的所有記錄。

22、查詢和學號為108的同學同年出生的所有學生的Sno、Sname和Sbirthday列。

23、查詢“張旭“教師任課的學生成績。

24、查詢選修某課程的同學人數多於5人的教師姓名。

25、查詢95033班和95031班全體學生的記錄。

26、查詢存在有85分以上成績的課程Cno.

27、查詢出“計算機系“教師所教課程的成績表。

28、查詢“計算機系”與“電子工程系“不同職稱的教師的Tname和Prof。

29、查詢選修編號為“3-105“課程且成績至少高於選修編號為“3-245”的同學的Cno、Sno和Degree,並按Degree從高到低次序排序。

30、查詢選修編號為“3-105”且成績高於選修編號為“3-245”課程的同學的Cno、Sno和Degree.

31、查詢所有教師和同學的name、sex和birthday.

32、查詢所有“女”教師和“女”同學的name、sex和birthday.

33、 查詢成績比該課程平均成績低的同學的成績表。

34、查詢所有任課教師的Tname和Depart.

35、 查詢所有未講課的教師的Tname和Depart.

36、查詢至少有2名男生的班號。

37、查詢Student表中不姓“王”的同學記錄。

38、查詢Student表中每個學生的姓名和年齡。

39、查詢Student表中最大和最小的Sbirthday日期值。

40、以班號和年齡從大到小的順序查詢Student表中的全部記錄。

41、查詢“男”教師及其所上的課程。

42、查詢最高分同學的Sno、Cno和Degree列。

43、查詢和“李軍”同性別的所有同學的Sname.

44、查詢和“李軍”同性別並同班的同學Sname.

45、查詢所有選修“計算機導論”課程的“男”同學的成績表。

相關文章