資料庫技術實驗報告SQL語句使用

2022-10-22 10:18:03 字數 3136 閱讀 8404

classes開課

registered_students學生選修

rooms教室

students學生

1. 找出所有姓中以s.開頭的學生。

sql語句:

select * from students where first_name like 『s*』;

返回結果:

2. 找出每個專業的學生人數、已得最高學分、最低學分、平均學分、學分總數。

sql語句:

select major as 專業,count(major) as 人數,max(current_cr) as 最高學分,min(current_cr) as 最低學分,**g(current_cr) as 平均學分,sum(current_cr) as 學分總數 from students group by major;

返回結果:

3. 找出所有教室的座位數,最大教室的座位數、最小座位數。

sql語句:

select sum(number_sea) as 座位數,max(number_sea) as 最大座位數,min(number_sea) as 最小座位數 from rooms;

返回結果:

4. 找出各大樓的最大教室座位數,最小教室座位數,平均座位數、座位總數。

sql語句:

select building as 大樓,max(number_sea) as 最大教室座位數,min(number_sea) as 最小教室座位數,**g(number_sea) as 平均座位數,sum(number_sea) as 座位總數 from rooms group by building;

返回結果:

5. 找出各課程尚可選修的人數。

sql語句:

select course as 開課課程,description as 課程名稱,max_students-current_students as 尚可選人數 from classes;

返回結果:

6. 找出開課最多的系。

sql語句:

select top 1 department as 開課系別,count(course) as 開課數 from registered_students group by department order by 2 desc;

返回結果:

//asc按公升序排列

//desc按降序排列

7. 找出開課最少的系。

sql語句:

select top 1 department as 開課系別,count(course) as 開課數 from registered_students group by department order by 2 asc;

返回結果:

8. 找出選課最多的學生。

sql語句:

select student_id as 學生號,count(course) as 選課數 from registered_students group by student_id h**ing count(course)>=all(select count(course) from registered_students group by student_id);

返回結果:

9. 找出選課最少的學生。

sql語句:

select student_id as 學生號,count(course) as 選課數 from registered_students group by student_id h**ing count(course)<=all(select count(course) from registered_students group by student_id);

返回結果:

10. 找出不及格的學生。

sql語句:

select distinct student_id as 學生號,first_name as 名,last_name as 姓,grade as 分數 from registered_students,students where id=student_id and grade='e';

返回結果:

11. 找出各課程平均分以下的學生。

sql語句:

select student_id as 學號,course as 課程,grade as 分數 from registered_students where asc(grade)>=(select **g(asc(grade)) from registered_students);

返回結果:

12. 找出各系所佔教室的座位數。

sql語句:

select department as 開課系別,sum(number_sea) as 座位數 from classes,rooms where group by department

返回結果:

13. 分別建立乙個學生、選修課程的歷史表,要求按時間儲存學生、選修課程資訊。將當前學生、選修資訊全部儲存到該歷史表。當前學生畢業,將當前學生刪除。

sql語句:

1)建立學生歷史表(增加入學日期regdate,學習狀態status)

sql語句:

create table int,first_name varchar(20),last_name varchar(20),major varchar(30),current_credits float,regdate date,status varchar(10));

返回結果:

2)建立選修課程歷史表(增加選課日期enrdate欄位)

sql語句:

create table int,department varchar(20),course int,grade varchar(20),enrdate date);

返回結果:

3)匯入當前學生狀態

sql語句:

insert into students_his(id,first_name,last_name,major, current_cre) select * from students;

返回結果:

4)更新入學日期,學習狀態

sql語句:

update students_his set regdate='2017-03-01',status='在學';

返回結果:

5)匯入當前選修資訊

資料庫實驗報告實驗二互動式SQL

資料庫系統概論 課程之實驗二 互動式sql 1 熟悉資料庫的互動式sql工具。2 熟悉通過sql對資料庫進行操作。3 完成作業的上機練習。利用kingbasees及其互動式查詢工具isqlw來熟悉sql。1.在kingbasees中建立乙個資料庫,進行實驗所要求的各種操作,所有的sql操作均在此建立...

資料庫建模技術實驗報告

實驗報告書 實驗名稱 資料庫建模技術之資料庫設計 專業班級 111030706 學號 11103070601 11103070619 姓名 陳傑潘耀斌 聯絡 指導老師 李唯唯 實驗時間 2014.4.28 2014.6.16 電腦科學與工程學院計算機實驗室 中心 目錄1.選題背景 對所選題目涉及的企...

資料庫實驗報告

資料庫系統概論 實驗報告 實驗三 sql單錶查詢和多表查詢 一 實驗目的 1 觀察查詢結果,體會select語句實際應用 2 要求學生能夠在access環境中使用select語句進行簡單查詢 資料排序和資料連線查詢的操作方法 二 實驗準備 本實驗需要用到實驗一所建立的 學生成績管理 的資料庫和stu...