1. 程式人生 > >Oracle SQL 練習題目

Oracle SQL 練習題目

主要的三張表如下:
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述

建表語句及資料如下:

create table student(
sno integer ,
sname VARCHAR(255),
Ssex VARCHAR(10),
sage Integer ,
sdet VARCHAR(255)
);

create table course(
cno integer ,
cname VARCHAR(255),
hours integer 
);

create table sc(
sno integer ,
cno integer ,
grade integer 
);

insert into student values
(9512101,'李四','男',19,'計算機系');
insert into student values(9512102,'劉唄','男',20,'計算機系'); insert into student values(9512103,'王搜尋','女',20,'計算機系'); insert into student values(9521101,'張熱','男',22,'資訊系'); insert into student values(9521102,'吳撒','女',21,'資訊系'); insert into student values(9521103,'張額外','男',20,'資訊系'); insert
into student values(9531101,'錢力','女',18,'數學系');
insert into student values(9531102,'王力','男',19,'數學系'); insert into course values(1,'計算機文化學',70); insert into course values(2,'VB',90); insert into course values(3,'計算機網路',80); insert into course values(4,'資料庫基礎',108); insert into course values(5,'高等數學'
,180);
insert into course values(6,'資料結構',72); insert into sc values(9512101,1,90); insert into sc values(9512101,2,86); insert into sc(sno,cno) values(9512101,6); insert into sc values(9512102,2,78); insert into sc values(9512102,4,66); insert into sc values(9521102,1,82); insert into sc values(9521102,2,75); insert into sc values(9521102,4,92); insert into sc values(9521102,5,50); insert into sc values(9521103,2,68); insert into sc(sno,cno) values(9521103,6); insert into sc values(9531101,1,80); insert into sc values(9531101,5,95); insert into sc values(9531102,5,85);

題目如下:
1.分別查詢學生表和學生修課表中的全部資料。

2.查詢成績在70到80分之間的學生的學號、課程號和成績。

3.查詢1號課程成績最高的分數。

4.查詢學生都選修了哪些課程,要求列出課程號。

5.查詢修了2號課程的所有學生的平均成績、最高成績和最低成績。

6.統計每個系的學生人數。

7.統計每門課程的修課人數和考試最高分。

8.統計每個學生的選課門數,並按選課門數的遞增順序顯示結果。

9.統計選修課的學生總數和考試的平均成績.

10.查詢選課門數超過2門的學生的平均成績和選課門數。

11.列出總成績超過200分的學生,要求列出學號、總成績。

12.查詢選修了2號課程的學生的姓名和所在系。

13.查詢成績80分以上的學生的姓名、課程號和成績,並按成績的降序排列結果。

14.查詢計算機系男生修了”資料庫基礎”的學生的姓名、性別、成績

15.查詢哪些學生的年齡相同,要求列出年齡相同的學生的姓名和年齡。

16.查詢哪些課程沒有人選,要求列出課程號和課程名。

17.查詢有考試成績的所有學生的姓名、修課名稱及考試成績 .要求將查詢結果放在一張新的永久表(假設新表名為new-sc)中。

18.分別查詢資訊系和計算機系的學生的姓名、性別、修課名稱、修課成績,
並要求將這兩個查詢結果合併成一個結果集,
並以系名、姓名、性別、修課名稱、修課成績的順序顯示各列。

子查詢實現:

1.查詢選修了1號課程的學生的姓名和所在系。

2.查詢數學系成績80分以上的學生的學號、姓名。

3.查詢計算機系學生所選的課程名。

4.刪除修課成績小於50分的學生的修課記錄

5.將所有選修了1課程的學生的成績加10分。