Bài giảng cơ sở dữ liệu chương 4 đại số quan hệ

61 331 0
Bài giảng cơ sở dữ liệu   chương 4  đại số quan hệ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chương Đại số quan hệ (Relational Algebra) Giới thiệu  Đại số quan hệ (và phép tính quan hệ) được định nghĩa bởi Codd 1971, xem tảng ngôn ngữ quan hệ khác như SQL  Là ngôn ngữ thủ tục bậc cao, được dùng để chỉ ra cách xây dựng một quan hệ mới từ một hay nhiều quan hệ trong cơ sở dữ liệu  Bao gồm tập các phép toán thao tác trên các 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 trên 20000 TENNV HONV NGSINH DCHI PHAI LUONG PHONG Tung Nguyen 12/08/1955 638 NVC Q5 Nam 40000 Hang Bui 07/19/1968 332 NTH Q1 Nu 25000 Nhu Le 06/20/1951 291 HVH QPN Nu 43000 Hung Nguyen 09/15/1962 Ba Ria VT Nam 38000 Quang Pham 11/10/1937 450 TV HN Nam 55000 Các phép toán đại số quan hệ a Phép chọn  (Selection) b Phép chiế u  (Projection) c Phép gán  d Phép hợp  (Union) e Phép giao  (Intersection) f Phép trừ - (Difference) g Phép tích Cartesian X (Cartesian Product) h Phép chia ÷ (Division) i Phép kết (Join) Phép chọn (Selection)  Đượ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)  Phép chọn (Selection)  P là biểu thức gồm các mệnh đề có dạng: Ví dụ: MSSV = 01224 Ví dụ: MSNV = MTH  Các phép so sánh được sử dụng: gồm  ,  ,  ,  ,  ,   Các mệnh đề được nối lại nhờ các phép: ∧ (and), ∨ (or),¬ (not) Phép chọn (Selection)  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)  (A=B) (R)  (A=B)(D>5) (R) Phép chọn (Selection) Câu hỏi 1: Cho biết các nhân viên nam ?  Biểu diễn cách 1 :  (Quan hệ) Cú pháp : (Điều kiện  điều kiện  ….) Câu hỏi 1:  Biểu diễn cách 2:  (NhanVien) Phai=‘Nam’ Cú pháp : (Quan hệ: điều kiện chọn) Câu hỏi 1: (NhanVien: Phai=‘Nam’) Kết phép chọn NHANVIEN NHANVIEN MANV HOTEN NTNS PHAI NV001 Nguyễn Tấn Đạt 10/12/1970 Nam MANV NV002 Trần Đông Anh 01/08/1981 Nữ NV003 Lý Phước Mẫn 02/04/1969 Nam HOTEN NTNS PHAI NV001 Nguyễn Tấn Đạt 10/12/1970 Nam NV003 Lý Phước Mẫn 02/04/1969 Nam Phép chọn (Selection) Câu hỏi 2: Cho biết các nhân viên nam sinh sau năm 1975 ?  Biểu diễn cách 1 :  (NhanVien) (Phai=‘Nam’  Year(NTNS)>1975)  Biểu diễn cách 2: (NhanVien: Phai=‘Nam’  Year(NTNS)>1975) Kết phép chọn NHANVIEN MANV HOTEN NTNS PHAI NV001 Nguyễn Tấn Đạt 10/12/1970 Nam NV002 Trần Đông Anh 01/08/1981 Nữ NV003 Lý Phước Mẫn 02/04/1969 Nam NHANVIEN MANV HOTEN NTNS PHAI (không có thỏa) Phép chọn (Selection) 10 Phép kết (Join)  Được dùng để tổ hợp 2 bộ có liên quan từ 2 quan hệ thành 1 bộ  Ký hiệu: R S  Với R(A1, A2, …, An) và S(B1, B2, …, Bm), chúng ta có kết quả của phép kết là một quan hệ Q:  Có n + m thuộc tính Q(A1, A2, …, An, B1, B2, …, Bm)  Mỗi bộ của Q là tổ hợp của 2 bộ trong R và S, thỏa mãn một số điều kiện kết nào đó: • Có dạng Ai  Bj • Ai là thuộc tính của R, Bj là thuộc tính của S • Ai và Bj có cùng miền giá trị •  là phép so sánh , , , , ,  Phép kết (Join)  Phân loại – Kết theta (Theta join) là phép kết có điều kiện • Ký hiệu: • C gọi là điều kiện kết trên thuộc tính – Kết bằng (Equi join) khi C là điều kiện so sánh bằng – Kết tự nhiên (Natural join) • Ký hiệu: Phép kết Theta (Theta join)  Kết theta (Theta join) là phép kết có điều kiện + Ký hiệu: + C gọi là điều kiện kết trên thuộc tính 49 Phép kết Theta (Theta join) : “C” 50 Phép kết Theta (Theta join) R A B C D E 3 6 S 51 Phép kết (Equi join) 52 Phép kết (Equi join) R A B C C D 3 6 S 53 Phép kết tự nhiên (Natural join) 54 Phép kết tự nhiên (Natural join) R R S C D AA BB CC D S.C D 3 6 22 55 33 66 31 62 11 44 A B C S 55 Phép kết (Join) • Cho biết nhân viên có lương hơn lương của nhân viên ‘Tùng’ – Quan hệ: NHANVIEN – Thuộc tính: LUONG Phép kết (Join) Phép kết (Join) • Với mỗi nhân viên, hãy cho biết thông tin của phòng ban mà họ đang làm việc – Quan hệ: NHANVIEN, PHONGBAN Phép kết (Join) Phép kết (Join) • Với mỗi phòng ban hãy cho biết các địa điểm của phòng ban – Quan hệ: PHONGBAN, DDIEM_PHG Phép kết (Join) [...]... TENNV (NV_P4) 22 Phép toán tập hợp  Quan hệ là tập hợp các bộ: – Phép hội R  S – Phép giao R  S – Phép trừ R  S  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) 23 Hai quan hệ khả hợp  Cho 2 quan hệ R và S khả hợp: + Cùng số thuộc tính Ví dụ: R và S đều có 2 thuộc tính + Các thuộc tính “ tương ứng ” có cùng kiểu 24 Phép hội (Union)  Cho 2 quan hệ R và S khả hợp... Kết hợp các phép toán đại số quan hệ – Lồng các biểu thức lại với nhau P( A1, A2, …, Ak ( P (R)) – Thực hiện từng phép toán một • B1 S  P (R) • B2     A1, A2, …, Ak (R))  KQ   A1, A2, …, Ak (S) 21 Chuỗi các phép toán  Cho biết họ và tên nhân viên làm việc ở phòng số 4 – Quan hệ: NHANVIEN – Thuộc tính: HONV, TENNV – Điều kiện: PHG =4  C1: HONV, TENNV ( PHG =4 (NHANVIEN))  C2: NV_P4  PHG =4 (NHANVIEN)... Được dùng để lấy ra một vài cột của quan hệ R  Ký hiệu:  A1, A2, …, Ak(R)  Kết quả trả về là một quan hệ: – Có k thuộc tính – Có số bộ luôn ít hơn hoặc bằng số bộ của R – Phép chiếu loại bỏ những bộ trùng nhau  Ví dụ:  A,C (R)  A,C (R) 13 Phép chiếu (Projection) Câu hỏi 1: Cho biết họ tên nhân viên và giới tính ?  Biểu diễn cách 1 : Cú pháp :  Câu hỏi 1 :  (Quan hệ) Cột1, cột2, cột 3, … (NHANVIEN)... 001 Hung KẾT_QUẢ 001 1B 002 Huyen MSNV 002 1A 003 Dung 005 003 1A 0 04 Hoa 006 003 1B 005 Tien 0 04 1C 006 Tam MANV(NHANVIEN) – MANV(PHANCONG) 33 Các tính chất  Giao hoán:  Kết hợp: 34 Phép tích Cartesian RS 35 Phép tích Cartesian  Được dùng để kết hợp các bộ của các quan hệ lại với nhau  Ký hiệu: RS  Kết quả trả về là một quan hệ Q – Mỗi bộ của Q là tổ hợp giữa 1 bộ trong R và 1 bộ trong S –... đổi tên thành quan hệ Q HOTEN, NTNS  Biểu diễn cách 2: NHANVIEN NHANVIEN PHAI Kết quả 10/12/1970 Nam phép chiếu Trần Đông Anh 01/08/1981 Nữ Lý Phước Mẫn 02/ 04/ 1969 Nam MANV HOTEN NTNS NV001 Nguyễn Tấn Đạt NV002 NV003 HOTEN NTNS Nguyễn Tấn Đạt 10/12/1970 Lý Phước Mẫn 02/ 04/ 1969 15 Phép chiếu (Projection) 16 Phép chiếu (Projection) • Cho biết họ tên và lương của các nhân viên – Quan hệ: NHANVIEN –... Cho biết nhân viên được phân công tham gia cả 2 đề án ‘1A’ và đề án ‘1B’? PHAN_CONG PHAN_CONG MSNV MSDA MSNV 001 1A 001 001 1B 003 002 1A 003 1A 003 1B 0 04 1C [ MSNV( (MSDA=“1A”) (PHAN_CONG) ]  [ MSNV( (MSDA=“1B”) (PHAN_CONG) ] 30 Phép trừ (Difference)  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 A B A B  1  2  2  3  1 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ụ: S R A B  A B A B  1 1  2  2  2  3  1  1  2  3 S 25 Phép hội (Union)  Ví dụ: 26 Phép hội (Union)  Cho biết nhân viên được phân công tham gia đề án có mã số ‘1A’ hoặc đề án có mã số ‘1B’? PHAN_CONG PHAN_CONG MSNV MSDA MSNV 001 1A 001 001 1B 002 002 1A 003 003 1A 003 1B 0 04. .. 001 1A 001 001 1B 002 002 1A 003 003 1A 003 1B 0 04 1C [ MSNV( (MSDA=“1A”) (PHAN_CONG) ]  [ MSNV( (MSDA=“1B”) (PHAN_CONG) ] 27 Phép giao (Intersection)  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 A B A B  1  2  2  3  1 S 28 Phép giao (Intersection)  Ví dụ: 29 Phép giao (Intersection)... – Quan hệ: NHANVIEN – Thuộc tính: HONV, TENNV, LUONG 17 Phép chiếu mở rộng • Mở rộng phép chiếu bằng cách cho phép sử dụng các phép toán số học trong danh sách thuộc tính • Ký hiệu – E là biểu thức ĐSQH – F1, F2, …, Fn là các biểu thức số học liên quan đến • Hằng số • Thuộc tính trong E 18 Phép chiếu mở rộng  Ví dụ: – Cho biết họ tên của các nhân viên và lương của họ sau khi tăng 10% 19 Phép gán... 3, … (NHANVIEN) HOTEN,PHAI  Biểu diễn cách 2: Cú pháp : Quan hệ [cột1,cột2,cột3,…] Câu hỏi 1: NHANVIEN [ HOTEN, PHAI ] NHANVIEN NHANVIEN MANV HOTEN NTNS PHAI NV001 Nguyễn Tấn Đạt 10/12/1970 Nam NV002 Trần Đông Anh 01/08/1981 Nữ NV003 Lý Phước Mẫn 02/ 04/ 1969 Nam Kết quả phép chiếu HOTEN PHAI Nguyễn Tấn Đạt Nam Trần Đông Anh Nữ Lý Phước Mẫn Nam 14 Phép chiếu (Projection) Câu hỏi 2: Cho biết họ tên và ngày tháng năm sinh của các nhân viên nam? ... FOXPRO 38 Phép tích Cartesian Câu hỏi 1: Tính tích Descartes quan hệ nhân viên phòng ban Cú pháp :    Quan- h - k Quan- h -2 Quan- h -1 Câu hỏi viết lại: NHANVIEN PHONGBAN NHANVIEN PHONGBAN MANV... dựng một quan hệ mới từ một hay nhiều quan hệ trong cơ sở dữ liệu  Bao gồm tập các phép toán thao tác trên các 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... thiệu  Đại số quan hệ (và phép tính quan hệ) được định nghĩa bởi Codd 1971, xem tảng ngôn ngữ quan hệ khác như SQL  Là ngôn ngữ thủ tục bậc cao, được dùng để chỉ ra cách xây dựng một quan hệ mới từ một hay nhiều quan hệ trong cơ sở

Ngày đăng: 04/04/2016, 11:52

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan