資料庫系統原理(4)

2021-10-05 10:29:03 字數 2202 閱讀 3965

第三章:關聯式資料庫標準語句sql(連線、巢狀、集合查詢)

1.連線查詢

查詢每個學生及其選修課程的情況

select student.,sc.

from student,sc

where student.sno=sc.sno

2.自然連線

select student.sno,sname,s***,sdept,cno,grade

from student,sc

where student.sno=sc.sno

3.查詢每一門課的間接先修課

select first.cno,second.cpno

from course first,course second

where first.cpno=second.cno

4.外連線操作以指定表為鏈結主體,將主體表中不滿足連線條件的元組一併輸出。

查詢每個學生及其選修課程的情況包括沒有選修課程的學生(外連線)

select student.sno,sname,s***,sage,sdept,cno,grade

from student,sc

where student.sno=sc.sno(*)

(*號表示沒有選課的)

5.查詢選修2號課程且成績在90分以上的所有學生的學號、姓名

select student.sno,student.sname

from student,sc

where student.sno=sc.sno and sc.cno=『2』 and sc.grade>90

6.查詢每個學生的學號、姓名、選修的課程名及成績

select student.sno,sname,cname,grade

from student,sc,course

where student.sno=sc.sno and sc.cno=course.cno

7.巢狀查詢

查詢與「劉晨」在同乙個系學習的學生。次查詢要求可以分步來完成

1)確定「劉晨」所在系名

select sdept

from student

where sname=『劉晨』

2)查詢所有在is系學習的學生

select sno,sname,sdept

from student

where sdept=『is』

巢狀查詢

select sno,sname,sdept

from student

where sdept in

(select sdept

from student

where sname=『劉晨』

)用自身連線完成本查詢要求

select s1.sno,s1.sname,s1.sdept

from student s1,student s2

where s1.sdept=s2.sdept and s2.sname=『劉晨』

巢狀查詢

select sno,sname,sdept

from student s1

where s1.sdept in

(select sdept

from student s2

where s2.sname=『劉晨』

)8. 查詢選修課程名為「資訊系統」的學生學號和姓名

select sno,sname

from student

where sno in(

select sno

from sc

where cno in(

select cno

from course

where cname=『資訊系統』))

9.查詢其他系中比資訊系任意乙個學生年齡小的學生姓名和年齡

select sname,sage

from student

where sage『is』)

and sdept<>『is』

10.exists謂詞

帶有exists謂詞的子查詢不返回任何資料,只產生邏輯真值『true』或邏輯假值『false』

查詢所有選修了1號課程的學生姓名

select sname

from student

where exisits(

select * from sc where sno=student.sno and cno=『1』)

資料庫 資料庫系統原理

事務指的是滿足 acid 特性的一組操作,可以通過 commit 提交乙個事務,也可以使用 rollback 進行回滾。事務被視為不可分割的最小單元,事務的所有操作要麼全部提交成功,要麼全部失敗回滾。回滾可以用回滾日誌來實現,回滾日誌記錄著事務所執行的修改操作,在回滾時反向執行這些修改操作即可。資料...

資料庫系統原理1

資料描述經歷了三個階段對應於三個資料模型 如 在乙個班級裡假設沒有重名的同學,現有四個屬性 學號 姓名 年齡 性別 超鍵 在關係中可以唯一標識元組的屬性集。學號是超鍵 學號 姓名是超鍵 學號,姓名 性別是超鍵。所以超鍵可以是乙個屬性也可以是乙個屬性集,只要可以唯一標識就行。候選鍵 不含有多餘屬性的超...

資料庫系統原理 (1)

資料庫實現資料儲存,有了一套管理系統來管理資料 1 資料庫表,庫操作 注釋 單行注釋用 注意 要用空格隔開注釋內容 多行注釋用 例子 這是多行注釋 另外mysql還支援 鍵注釋,且不需要空格 基本語法 資料庫 建立 create database base1 使用 use 資料庫名 修改 刪除 dr...