1. 程式人生 > >SQL語句的增練習案例

SQL語句的增練習案例

arc reat 3.0 完全 tno 查詢 script 化學 sse

create table student(

sno varchar2(10) primary key,

sname varchar2(20),

sage number(2),

ssex varchar2(5)

);

create table teacher(

tno varchar2(10) primary key,

tname varchar2(20)

);

create table course(

cno varchar2(10),

cname varchar2(20),

tno varchar2(20),

constraint pk_course primary key (cno,tno)

);

create table sc(

sno varchar2(10),

cno varchar2(10),

score number(4,2),

constraint pk_sc primary key (sno,cno)

);

/*******初始化學生表的數據******/

insert into student values (‘s001‘,‘張三‘,23,‘‘);

insert into student values (‘s002‘,‘李四‘,23,‘‘);

insert into student values (‘s003‘,‘吳鵬‘,25,‘‘);

insert into student values (‘s004‘,‘琴沁

‘,20,‘‘);

insert into student values (‘s005‘,‘王麗‘,20,‘‘);

insert into student values (‘s006‘,‘李波‘,21,‘‘);

insert into student values (‘s007‘,‘劉玉‘,21,‘‘);

insert into student values (‘s008‘,‘蕭蓉‘,21,‘‘);

insert into student values (‘s009‘,‘陳蕭曉‘,23,‘‘);

insert into student values (‘s010‘,‘陳美‘,22,‘‘);

commit;

/******************初始化教師表***********************/

insert into teacher values (‘t001‘, ‘劉陽‘);

insert into teacher values (‘t002‘, ‘諶燕‘);

insert into teacher values (‘t003‘, ‘胡明星‘);

commit;

/***************初始化課程表****************************/

insert into course values (‘c001‘,‘J2SE‘,‘t002‘);

insert into course values (‘c002‘,‘Java Web‘,‘t002‘);

insert into course values (‘c003‘,‘SSH‘,‘t001‘);

insert into course values (‘c004‘,‘Oracle‘,‘t001‘);

insert into course values (‘c005‘,‘SQL SERVER 2005‘,‘t003‘);

insert into course values (‘c006‘,‘C#‘,‘t003‘);

insert into course values (‘c007‘,‘JavaScript‘,‘t002‘);

insert into course values (‘c008‘,‘DIV+CSS‘,‘t001‘);

insert into course values (‘c009‘,‘PHP‘,‘t003‘);

insert into course values (‘c010‘,‘EJB3.0‘,‘t002‘);

commit;

/***************初始化成績表***********************/

insert into sc values (‘s001‘,‘c001‘,78.9);

insert into sc values (‘s002‘,‘c001‘,80.9);

insert into sc values (‘s003‘,‘c001‘,81.9);

insert into sc values (‘s004‘,‘c001‘,60.9);

insert into sc values (‘s001‘,‘c002‘,82.9);

insert into sc values (‘s002‘,‘c002‘,72.9);

insert into sc values (‘s003‘,‘c002‘,81.9);

insert into sc values (‘s001‘,‘c003‘,‘59‘);

commit;

練習:

註意:以下練習中的數據是根據初始化到數據庫中的數據來寫的SQL 語句,請大家務必註意。

1、查詢“c001”課程比“c002”課程成績高的所有學生的學號;

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

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

4、查詢姓“劉”的老師的個數;

5、查詢沒學過“諶燕”老師課的同學的學號、姓名;

6、查詢學過“c001”並且也學過編號“c002”課程的同學的學號、姓名;

7、查詢學過“諶燕”老師所教的所有課的同學的學號、姓名;

8、查詢課程編號“c002”的成績比課程編號“c001”課程低的所有同學的學號、姓名;

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

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

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

12、查詢至少學過學號為“s001”同學所有一門課的其他同學學號和姓名;

13、把“SC”表中“諶燕”老師教的課的成績都更改為此課程的平均成績;

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

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

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

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

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

19、查詢不同老師所教不同課程平均分從高到低顯示

20、統計列印各科成績,各分數段人數:課程ID,課程名稱,[100-85],[85-70],[70-60],[ <60]

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

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

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

24、查詢男生、女生人數

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

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

271981 年出生的學生名單(註:Student 表中Sage 列的類型是number)

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

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

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

31、查詢所有學生的選課情況;

32、查詢任何一門課程成績在70 分以上的姓名、課程名稱和分數;

33、查詢不及格的課程,並按課程號從大到小排列

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

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

36、查詢選修“諶燕”老師所授課程的學生中,成績最高的學生姓名及其成績

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

38、查詢不同課程成績相同的學生的學號、課程號、學生成績

39、查詢每門功課成績最好的前兩名

40、統計每門課程的學生選修人數(超過10 人的課程才統計)。要求輸出課程號和選修人數,查詢結果按人數降序排列,若人數相同,按課程號升序排列

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

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

43、查詢沒學過“諶燕”老師講授的任一門課程的學生姓名

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

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

46、刪除“s002”同學的“c001”課程的成績

---------------------

原文:https://blog.csdn.net/hai1991yu/article/details/82558494

SQL語句的增練習案例