Nhập môn Cơ sở Dữ liệu

3.2. Đại số quan hệ
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

Giớ i thiệ u

Xét một số xử lý trên quan hệ NHANVIEN
Thêm mới một nhân v...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

Giớ i thiệ u
Xét một số xử lý trên quan hệ SINHVIEN, SV_DIEM, MONHOC
SINH...
Ngôn ngữ Đại số quan hệ

Nhập môn Cơ sở Dữ liệu

Giớ i thiệ u
Xét một số xử lý trên quan hệ SINHVIEN, SV_DIEM
BANGDIEM

02...
Ngôn ngữ đại số quan hệ

Nhập môn Cơ sở Dữ liệu

Giớ i thiệ u
Các thao tác:

1. Cậ p nhậ t: Thay đổi dữ liệu (trạng thái C...
Ngôn ngữ đại số quan hệ

Nhập môn Cơ sở Dữ liệu

1. Các thao tác cậ p nhậ t
Nội dung (trạng thái) của CSDL có thể được cậ...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ đại số quan hệ

1.1. Thêm bộ mớ i vào quan hệ
 Được diễn đạt
o
o

INSERT(R; t)

R là qua...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

1.1. Thêm bộ mớ i vào quan hệ
SINHVIEN
Masv
T1
C2
T3
T4
C3

Ho
Trần
Lê
Tr...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ đại số quan hệ

1.2. Thao tác xóa: Xóa một hoặc nhiều bộ theo điều kiện nào đó
Được diễn...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

1.2. Xóa các bộ
SINHVIEN
Masv
T1
C2
T3
T4
C3

Ho
Trần
Lê
Trần
Vũ
Phạm

MO...
Ngôn ngữ Đại số quan hệ

Nhập môn Cơ sở Dữ liệu

1.3. Cậ p nhậ t các bộ
Thay đổi giá trị của các thuộc tính trong một hoặ...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

1.3. Cậ p nhậ t các bộ
Được diễn đạt

MODIFY(R; f;<a i = v i ,…>)

o R l...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

1.3. Cậ p nhậ t các bộ
MODIFY(R; f;<a i = v i ,…>)

Các ràng buộc toàn v...
Nội dung chi tiết
Giới thiệu
Các thao tác cập nhật trên quan hệ
Đại số quan hệ
Phép toán tập hợp
Phép chọn
Phép chiế...
Ngôn ngữ Đại số quan hệ

Nhập môn Cơ sở Dữ liệu

2. Các phép toán đạ i số quan hệ
Toán hạng (Biến) là các quan hệ , tập h...
Ngôn ngữ Đại số quan hệ

Nhập môn Cơ sở Dữ liệu

2. Các phép toán đạ i số quan hệ
Toán tử (operations)
 Dựa trên lý thuy...
Ngôn ngữ Đại số quan hệ

Nhập môn Cơ sở Dữ liệu

Nộ i dung chi tiế t
Giới thiệu
Các thao tác cập nhật trên quan hệ
Đại ...
Ngôn ngữ Đại số quan hệ

Nhập môn Cơ sở Dữ liệu

2.1. Phép toán tậ p hợ p
Quan hệ là tập hợp các bộ
 Phép hợp R ∪ S
 Ph...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.1 Phép toán tậ p hợ p
Ví dụ: tính khả hợp
GIAOVIEN Ho

Ten

Ngaysinh

...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.1 Phép toán tậ p hợ p
Ví dụ: tính khả hợp
NHANVIEN

TENNV

NS

GT

Tun...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.1.a Phép hợ p
Cho 2 quan hệ R và S khả hợp
Phép hợp của R và S
Ký hi...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.1.a Phép hợ p
Ví dụ

GIAOVIEN

HSL

Văn

Tám

12/01/1980

3.33

Đình

...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.1.b. Phép giao
Cho 2 quan hệ R và S khả hợp
Phép giao của R và S
Ký ...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.1.c. Phép trừ
Cho 2 quan hệ R và S khả hợp
Phép giao của R và S
Ký h...
Ngôn ngữ Đại số quan hệ

Nhập môn Cơ sở Dữ liệu

Các tính chấ t
Giao hoán

R∪ S=S∪R
R∩ S=S∩R
Kết hợp

R ∪ (S ∪ T) = (R ∪...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.2. Các phép toán Cơ sở dữ liệu

2.2.a. Phép chọ n
Được dùng để lấy ra ...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.2.a. Phép chọ n
Kết quả trả về là một quan hệ
Có cùng danh sách thuộc...
Ngôn ngữ Đại số quan hệ

Nhập môn Cơ sở Dữ liệu

2.2.a. Phép chọ n
BANGDIEM

D_1001 =

σ

(Mamon=“Int1001”)

(BANGDIEM)

D...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.2.a. Phép chọ n
Phép chọn có tính giao hoán

σ (σ
p1

p2

Ví dụ

σ
=σ
...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

Ví dụ 1

Cho biết các nhân viên ở phòng số 4
Quan hệ: NHANVIEN
Thuộc t...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

Ví dụ 2

Tìm các nhân viên có lương trên 2.5 tr ở phòng 4 hoặc

các nhân...
Nội dung chi tiết
Giới thiệu
Các thao tác cập nhật trên quan hệ
Đại số quan hệ
Phép toán tập hợp
Phép chọn
Phép chiế...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.2.b Phép chiế u

Lấy ra một số cột của quan hệ R
Ký hiệu

π

A1, A2, ...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.2.b Phép chiế u
Ví dụ 1:

BANGDIEM

DS1 = πMasv,Ho,Dem,Ten,Diem (BANGDI...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

2.2.b Phép chiế u
Tính chất:

π (π
X

Ví dụ 2:

π

Y

Masv,Ho,Dem,Ten

π...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

Ví dụ 3
Cho biết họ tên và lương của các nhân viên
Quan hệ: NHANVIEN
T...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

Ví dụ 4:
Cho biết mã nhân viên có tham gia đề án hoặc có

thân nhân

NV_...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

Ví dụ 5:
Cho biết mã nhân viên có người thân và có tham gia

đề án

π

M...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

Ví dụ 6:
Cho biết mã nhân viên không có thân nhân nào

π

(NV_DEAN) -

M...
Nhập môn Cơ sở Dữ liệu

Ngôn ngữ Đại số quan hệ

Ví dụ 7: Danh sách sinh viên (Mã, Họ, đệm, tên, mã môn) nợ môn

π

Masv,H...
Upcoming SlideShare
Loading in …5
×

C3 2 (tuan6,7)

433 views

Published on

Published in: Education
  • Be the first to comment

  • Be the first to like this

C3 2 (tuan6,7)

  1. 1. Nhập môn Cơ sở Dữ liệu 3.2. Đại số quan hệ
  2. 2. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ Giớ i thiệ u Xét một số xử lý trên quan hệ NHANVIEN Thêm mới một nhân viên Chuyển nhân viên có tên là “Tùng” sang phòng số 1 Cho biết họ tên và ngày sinh các nhân viên có lương thấp hơn 50000 TENNV HONV NS DCHI GT LUONG PHONG Tung Nguyen 12/08/1955 638 NVC Q5 Nam 40000 Hang Bui 07/19/1968 332 NTH Q1 Nu 25000 1 5 4 Nhu Le 06/20/1951 291 HVH QPN Nu 43000 4 Hung Nguyen 09/15/1962 Ba Ria VT Nam 38000 5 Quang Pham 11/10/1937 450 TV HN Nam 55000 1 02:44 AM Khoa CNTT 2
  3. 3. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ Giớ i thiệ u Xét một số xử lý trên quan hệ SINHVIEN, SV_DIEM, MONHOC SINHVIEN SV_DIEM Masv Ho Dem Ten T1 C2 T3 T4 Trần Lê Trần Vũ Văn Đình Thị Đức An Bắc Hảo Lâm C3 Phạm Hải Ngọc Mamon Diem T1 Int1001 8 T1 Int1002 9 C2 Int1003 7 C2 Int1002 3 T3 Int1003 10 T4 MONHOC Masv Int1002 8 Mamon Sotinchi C2 Int1001 8 Int1001 Int1002 Int1003 02:44 AM Tenmon CSDL NGLT C TRR 3 4 3 T4 Int1001 7 C3 Int1003 6 Khoa CNTT 3
  4. 4. Ngôn ngữ Đại số quan hệ Nhập môn Cơ sở Dữ liệu Giớ i thiệ u Xét một số xử lý trên quan hệ SINHVIEN, SV_DIEM BANGDIEM 02:44 AM Khoa CNTT 4
  5. 5. Ngôn ngữ đại số quan hệ Nhập môn Cơ sở Dữ liệu Giớ i thiệ u Các thao tác: 1. Cậ p nhậ t: Thay đổi dữ liệu (trạng thái CSDL): o o o Thêm các bộ mới Xóa các bộ Sửa giá trị của bộ 1. Các phép toán đạ i số quan hệ phép toán tập hợp: hợp, giao, trừ, tích Đề-các  Các phép toán trên cơ sở dữ liệu quan hệ: chọn, chiếu, đổi tên, nối, chia 1. Mộ t số phép toán bổ sung: nhóm, nối ngoài  Các 02:44 AM Khoa CNTT 5
  6. 6. Ngôn ngữ đại số quan hệ Nhập môn Cơ sở Dữ liệu 1. Các thao tác cậ p nhậ t Nội dung (trạng thái) của CSDL có thể được cập nhật bằng các thao tác  Thêm (insert)  Xóa (delete)  Sửa (modify) Chú ý: • Chỉ đề cập thao tác và ý nghĩa, không nêu câu lệnh trong HQTCSDL cụ thể • Xét trên một quan hệ 02:44 AM Khoa CNTT 6
  7. 7. Nhập môn Cơ sở Dữ liệu Ngôn ngữ đại số quan hệ 1.1. Thêm bộ mớ i vào quan hệ  Được diễn đạt o o INSERT(R; t) R là quan hệ t là một bộ mới cần thêm vào Ví dụ o o o o INSERT(SINHVIEN; T5,”Nguyen”, “Hong”, “Anh”) INSERT(SV_DIEM; “T5”, “Int1002”, 9) INSERT(SV_DIEM; “T5”, “Int1004”, 7) INSERT(SV_DIEM; “T5”,” Int1001”, 12) Vi phạm ràng buộc o o o 02:44 AM Ràng buộc miền Ràng buộc khóa Ràng buộc tham chiếu Khoa CNTT Xử lý Loại bỏ 7
  8. 8. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 1.1. Thêm bộ mớ i vào quan hệ SINHVIEN Masv T1 C2 T3 T4 C3 Ho Trần Lê Trần Vũ Phạm MONHOC Mamon Int1001 Int1002 Int1003 Dem Văn Đình Thị Đức Hải Tenmon CSDL NGLT C TRR Ten An Bắc Hảo Lâm Ngọc Sotinchi 3 4 3 SV_DIEM Masv Mamon Diem T1 T1 C2 C2 T3 T4 C2 T4 C3 Int1001 Int1002 Int1003 Int1002 Int1003 Int1002 Int1001 Int1001 Int1003 8 9 7 3 10 8 8 7 6 INSERT(SV_DIEM; “C4”,“Int1001”,9.5) INSERT(SINHVIEN;“T1”, “Trầ n”,”Bá”,”Luậ n”) null, “Vũ”,null,”Lu INSERT(SV_DIEM; “T4”, “Int1007”, 6.0)ậ n”) 02:44 AM Khoa CNTT 8
  9. 9. Nhập môn Cơ sở Dữ liệu Ngôn ngữ đại số quan hệ 1.2. Thao tác xóa: Xóa một hoặc nhiều bộ theo điều kiện nào đó Được diễn đạt o o DELETE(R; f ) R là quan hệ f là một biểu thức ĐS Ví dụ DELETE(SINHVIEN; Masv = “T1”) o DELETE(SV_DIEM; Masv = “T2” )  Ràng buộ c có thể vi phạ m o Ràng buộc tham chiếu: được tham chiếu o Loại bỏ phép xóa, o Xóa lan truyền, Xử lí o Sửa đổi giá trị khóa ngoài tham chi ếu (null) o 02:44 AM Khoa CNTT 9
  10. 10. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 1.2. Xóa các bộ SINHVIEN Masv T1 C2 T3 T4 C3 Ho Trần Lê Trần Vũ Phạm MONHOC Mamon Int1001 Int1002 Int1003 Int2005 Dem Văn Đình Thị Đức Hải Tenmon CSDL NGLT C TRR KTCT Ten An Bắc Hảo Lâm Ngọc Sotinchi 3 4 3 2 SV_DIEM Masv Mamon Diem T1 T1 C2 C2 T3 T4 C2 T4 C3 Int1001 Int1002 Int1003 Int1002 Int1003 Int1002 Int1001 Int1001 Int1003 8 9 7 3 10 8 8 7 6 DELETE(MONHOC;Masv =“T1”) DELETE(SV_DIEM; Mamon =“Int2005”) DELETE(MONHOC; Masv =“C2”) and Mamon =“Int1001”) DELETE(SV_DIEM; Masv = =“Int1001”) DELETE(SINHVIEN; Mamon“T4” 02:44 AM Khoa CNTT 10
  11. 11. Ngôn ngữ Đại số quan hệ Nhập môn Cơ sở Dữ liệu 1.3. Cậ p nhậ t các bộ Thay đổi giá trị của các thuộc tính trong một hoặc nhiều bộ. Ví dụ o Tăng hệ số lương thêm 10 % cho tất cả nhân viên trong quan hệ NHANVIEN o “Chuyển “ nhân viên “Tùng” từ phòng Nghiên cứu sang phòng Kỹ thuật. o Sửa số tín chỉ thành 2 của môn học có mã là Int1001 trong quan hệ MONHOC. 02:44 AM Khoa CNTT 11
  12. 12. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 1.3. Cậ p nhậ t các bộ Được diễn đạt MODIFY(R; f;<a i = v i ,…>) o R là quan hệ o f là biểu thức đại số xác định bộ o ai thuộc tính cần sửa, vi giá trị mới của thuộc tính. Ví dụ Tăng thời gian làm việc cho tất cả nhân viên lên 1.5 lần MODIFY (NHANVIEN; Ten =“Tùng”; Phong = 4) MODIFY (NHANVIEN; all; Luong=Luong*1.1) MODIFY(MONHOC; Mamon=“Int1001”; sotinchi=2) 02:44 AM Khoa CNTT 12
  13. 13. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 1.3. Cậ p nhậ t các bộ MODIFY(R; f;<a i = v i ,…>) Các ràng buộc toàn vẹn có thể vi phạm o Ràng buộc miền o Với khóa chính = {xóa, chèn} => miền, toàn vẹn thực thể o Khóa ngoài=> toàn vẹn tham chiếu Ví dụ MODIFY(SINHVIEN Masv =“T1”; Masv MODIFY(SV_DIEM; MasvMasv;;=“T1”; Mamon =“Int1002”) MODIFY(SV_DIEM; =“T1”and Mamon=“Int1001”; Diem=5.5) MODIFY(SINHVIEN Masv =“T1”; dem=“Đức”) =“T5”) 02:44 AM Khoa CNTT 13
  14. 14. Nội dung chi tiết Giới thiệu Các thao tác cập nhật trên quan hệ Đại số quan hệ Phép toán tập hợp Phép chọn Phép chiếu Phép tích Cartesian Phép nối Phép chia Các phép toán khác 02:44 AM Khoa CNTT 14
  15. 15. Ngôn ngữ Đại số quan hệ Nhập môn Cơ sở Dữ liệu 2. Các phép toán đạ i số quan hệ Toán hạng (Biến) là các quan hệ , tập hợp (set) o Biểu thức được gọi là câu truy vấn, Là chuỗi các phép toán đại số quan hệ Toán tử là các phép toán đại số quan (operations) Kết quả trả về là một thể hiện của quan hệ 02:44 AM Khoa CNTT 15
  16. 16. Ngôn ngữ Đại số quan hệ Nhập môn Cơ sở Dữ liệu 2. Các phép toán đạ i số quan hệ Toán tử (operations)  Dựa trên lý thuyết tập hợp o o o Hội ∪ (union) Giao ∩ (intersec) Trừ − (difference)  Rút trích 1 phần của quan hệ o Chọn σ (selection) o Chiếu π (projection)  Kết hợp các quan hệ o o Tích Đề-các × (Cartesian product) Nối (join)  Đổi tên ρ 02:44 AM Khoa CNTT 16
  17. 17. Ngôn ngữ Đại số quan hệ Nhập môn Cơ sở Dữ liệu Nộ i dung chi tiế t Giới thiệu Các thao tác cập nhật trên quan hệ Đại số quan hệ Phép toán tậ p hợ p Phép chọn Phép chiếu Phép tích Cartesian Phép nối Phép chia Các phép toán khác 02:44 AM Khoa CNTT 17
  18. 18. Ngôn ngữ Đại số quan hệ Nhập môn Cơ sở Dữ liệu 2.1. Phép toán tậ p hợ p Quan hệ là tập hợp các bộ  Phép hợp R ∪ S  Phép giao R ∩ S  Phép trừ R − S Tính khả hợp (Tương thích đồng nhất - Union Compatibility)  Hai lược đồ quan hệ R(A1, A2, …, An) và S(B1, B2, …, Bn) là khả hợp nếu   Cùng bậc n Và có DOM(Ai)=DOM(Bi) , 1≤ i ≤ n Kết quả của ∪, ∩, và − là một quan hệ có cùng tên thuộc tính với quan hệ đầu tiên (R) 02:44 AM Khoa CNTT 18
  19. 19. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.1 Phép toán tậ p hợ p Ví dụ: tính khả hợp GIAOVIEN Ho Ten Ngaysinh HSL Lê Văn Tám 12/01/1980 3.33 Trần Đình Trí 10/12/1970 3.66 Nguyễn Hữu Minh 05/06/1980 3.00 Ho Dem Ten Ngaysinh HSL Trần Văn Đức 10/01/1980 3.33 Vũ Vân Long 18/04/1971 3.66 Phạm NHANVIEN Dem Đức Thành 01/01/1969 3.66 Bậc của 2 quan hệ n=5 Miền giá trị các thuộc tính như nhau 02:44 AM Khoa CNTT 19
  20. 20. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.1 Phép toán tậ p hợ p Ví dụ: tính khả hợp NHANVIEN TENNV NS GT Tung 12/08/1955 Hang THANNHAN TENTN NS_TN GT_TN Nam Trinh 04/05/1986 Nu 07/19/1968 Nu Khang 10/25/1983 Nam Nhu 06/20/1951 Nu Phuong 05/03/1958 Nu Hung 09/15/1962 Nam Minh 02/28/1942 Nam Chau 12/30/1988 Nu Bậc n=3 DOM(TENNV) = DOM(TENTN) DOM(NS) = DOM(NS_TN) DOM(GT) = DOM(GT_TN) 02:44 AM Khoa CNTT 20
  21. 21. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.1.a Phép hợ p Cho 2 quan hệ R và S khả hợp Phép hợp của R và S Ký hiệu R ∪ S Là một quan hệ gồm các bộ thuộc R hoặc thuộc S, hoặc cả hai (các bộ trùng lắp sẽ bị bỏ) R ∪ S = { t / t∈R ∨ t∈S } Ví dụ 1 R R∪ S B α S B α 1 A B 1 α 2 α 2 α 2 β 3 β 02:44 AM A A 1 β 1 β 3 Khoa CNTT R∪ S 21
  22. 22. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.1.a Phép hợ p Ví dụ GIAOVIEN HSL Văn Tám 12/01/1980 3.33 Đình Trí 10/12/1970 3.66 Hữu Minh 05/06/1980 3.00 Ho Dem Ten Ngaysinh HSL Trần Văn Đức 10/01/1980 3.33 Vũ Vân Long 18/04/1971 3.66 Phạm Đức Thành 01/01/1969 3.66 Ho Dem Ten Ngaysinh HSL Lê Văn Tám 12/01/1980 3.33 Trần Đình Trí 10/12/1970 3.66 Nguyễn Hữu Minh 05/06/1980 3.00 Trần Văn Đức 10/01/1980 3.33 Vũ Khoa CNTT Ngaysinh Nguyễn 02:44 AM Ten Trần GIAOVIEN ∪ NHANVIEN Dem Lê NHANVIEN Ho Vân Long 18/04/1971 3.66 Phạm Đức Thành 01/01/1969 3.66 22
  23. 23. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.1.b. Phép giao Cho 2 quan hệ R và S khả hợp Phép giao của R và S Ký hiệu R ∩ S Là một quan hệ gồm các bộ thuộc R đồng thời thuộc S R ∩ S = { t / t∈R ∧ t∈S } Ví dụ R B α A B 1 α 2 α 2 β 3 β 02:44 AM A S 3 Khoa CNTT R∩ S A B α 2 β 3 23
  24. 24. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.1.c. Phép trừ Cho 2 quan hệ R và S khả hợp Phép giao của R và S Ký hiệu R − S Là một quan hệ gồm các bộ thuộc R và không thuộc S R − S = { t / t∈R ∧ t∉S } Ví dụ R B α S A B 2 α 1 3 β 1 A B 1 α α 2 β β 02:44 AM A RS 1 Khoa CNTT 24
  25. 25. Ngôn ngữ Đại số quan hệ Nhập môn Cơ sở Dữ liệu Các tính chấ t Giao hoán R∪ S=S∪R R∩ S=S∩R Kết hợp R ∪ (S ∪ T) = (R ∪ S) ∪ T R ∩ (S ∩ T) = (R ∩ S) ∩ T 02:44 AM Khoa CNTT 25
  26. 26. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.2. Các phép toán Cơ sở dữ liệu 2.2.a. Phép chọ n Được dùng để lấy ra các bộ của quan hệ R Các bộ được chọn phải thỏa mãn điều kiện chọn P Ký hiệu σ P (R) P là điều kiện chọn gồm các mệnh đề có dạng o <tên thuộc tính> <phép so sánh> <hằng số> o <tên thuộc tính> <phép so sánh> <tên thuộc tính> <phép so sánh> gồm < , > , ≤ , ≥ , ≠ , =  Các mệnh đề được nối lại nhờ các phép ∧ , ∨ , ¬  02:44 AM Khoa CNTT 26
  27. 27. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.2.a. Phép chọ n Kết quả trả về là một quan hệ Có cùng danh sách thuộc tính với R Có số bộ luôn ít hơn hoặc bằng số bộ của R Ví dụ R B C D α α 1 7 α β 5 β β β 02:44 AM A β S= σ (R) A B C D 7 α α 1 7 12 3 23 10 β β 23 10 Khoa CNTT S (A=B)∧(D>5) 27
  28. 28. Ngôn ngữ Đại số quan hệ Nhập môn Cơ sở Dữ liệu 2.2.a. Phép chọ n BANGDIEM D_1001 = σ (Mamon=“Int1001”) (BANGDIEM) D_1oo1 02:44 AM Khoa CNTT 28
  29. 29. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.2.a. Phép chọ n Phép chọn có tính giao hoán σ (σ p1 p2 Ví dụ σ =σ (R)) = σ (σ p2 (R)) (Mamon=“Int1001”) (Masv=“T1”) p1 (σ (Masv = “T1”)(BANGDIEM)) (σ (Mamon = “Int1001”)(BANGDIEM)) Kết hợp nhiều phép chọn thành 1 phép chọn σ (σ p1 σ =σ p2 (R)) = (Mamon=“Int1001”) σ (R) (σ (Masv = “T1”)(BANGDIEM)) ((Mamon=“Int1001”)^(Masv = “T1”)) 02:44 AM (p1 ^ p2) Khoa CNTT (BANGDIEM) 29
  30. 30. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ Ví dụ 1 Cho biết các nhân viên ở phòng số 4 Quan hệ: NHANVIEN Thuộc tính: PHG Điều kiện: PHG=4 σ 02:44 AM PHG=4 Khoa CNTT (NHANVIEN) 30
  31. 31. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ Ví dụ 2 Tìm các nhân viên có lương trên 2.5 tr ở phòng 4 hoặc các nhân viên có lương trên 3 tr ở phòng 5 Quan hệ: NHANVIEN Thuộc tính: LUONG, PHG Điều kiện: LUONG>2500000 và PHG=4 hoặc  LUONG>3000000 và PHG=5  σ 02:44 AM (PHG=4 ^ LUONG>2500000) ∨ (PHG=5 ^ LUONG>3000000) Khoa CNTT (NHANVIEN) 31
  32. 32. Nội dung chi tiết Giới thiệu Các thao tác cập nhật trên quan hệ Đại số quan hệ Phép toán tập hợp Phép chọn Phép chiế u Phép tích Cartesian Phép nối Phép chia Các phép toán khác 02:44 AM Khoa CNTT 32
  33. 33. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.2.b Phép chiế u Lấy ra một số cột của quan hệ R Ký hiệu π A1, A2, …, Ak (R) R: lược đồ quan hệ Kết quả trả về là một quan hệ A1, A2,,,Ak ⊆ tập thuộc tính của R o Có k thuộc tính o Có số bộ luôn ít hơ n hoặc bằng số bộ của R (loại các bộ trùng) Ví dụ A B C α 10 1 α 20 30 1 β 40 π 1 β 02:44 AM R 2 Khoa CNTT S= A,C (R) 33
  34. 34. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.2.b Phép chiế u Ví dụ 1: BANGDIEM DS1 = πMasv,Ho,Dem,Ten,Diem (BANGDIEM) DS1 02:44 AM Khoa CNTT 34
  35. 35. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ 2.2.b Phép chiế u Tính chất: π (π X Ví dụ 2: π Y Masv,Ho,Dem,Ten π ( π (R)) = Masv,Ho,Dem,Ten,Mamon (R) X (R)) = π Masv,Ho,Dem,Ten π 02:44 AM A1,A2,..,Ak π ( B1,B2,..Bn (R)) Khoa CNTT ≠ ? π B1,B2,..,Bn π ( A1,A2,..Ak (R) (R)) 35
  36. 36. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ Ví dụ 3 Cho biết họ tên và lương của các nhân viên Quan hệ: NHANVIEN Thuộc tính: HONV, TENNV, LUONG π 02:44 AM (NHANVIEN) HONV, TENNV, LUONG Khoa CNTT 36
  37. 37. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ Ví dụ 4: Cho biết mã nhân viên có tham gia đề án hoặc có thân nhân NV_DEAN(Manv,Madean,Sogio) THANNHAN(Manv,Hoten, Gt) π π (NV_DEAN) Manv (THANNHAN) Manv π 02:44 AM (NV_DEAN) ∪ Manv Khoa CNTT π Manv (THANNHAN) 37
  38. 38. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ Ví dụ 5: Cho biết mã nhân viên có người thân và có tham gia đề án π Manv 02:44 AM (NV_DEAN) ∪ Khoa CNTT π Manv (THANNHAN) 38
  39. 39. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ Ví dụ 6: Cho biết mã nhân viên không có thân nhân nào π (NV_DEAN) - Manv 02:44 AM Khoa CNTT π Manv (THANNHAN) 39
  40. 40. Nhập môn Cơ sở Dữ liệu Ngôn ngữ Đại số quan hệ Ví dụ 7: Danh sách sinh viên (Mã, Họ, đệm, tên, mã môn) nợ môn π Masv,Ho,Dem,Ten,Mamon 02:44 AM Khoa CNTT ( σ (Diem<5) (BANGDIEM)) 40

×