Bài giảng Cơ sở dữ liệu - Đại số quan hệ - Trần Ngọc Bảo
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Cơ sở dữ liệu - Đại số quan hệ - Trần Ngọc Bảo", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_co_so_du_lieu_dai_so_quan_he_tran_ngoc_bao.pdf
Nội dung text: Bài giảng Cơ sở dữ liệu - Đại số quan hệ - Trần Ngọc Bảo
- Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CCƠƠ SSỞỞ DDỮỮ LILIỆỆUU Đại số quan hệ (Relational Algebra) Trần Ngọc Bảo Email: tnbao.dhsp@gmail.com
- Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CCƠƠ SSỞỞ DDỮỮ LILIỆỆUU ĐĐạạii ssốố quanquan hhệệ (Relational(Relational AlgebraAlgebra)) • Giới thiệu về Đại số quan hệ • Các phép toán quan hệ • Các phép toán khác
- Đại số quan hệ U U Ệ Ệ • Là ngôn ngữ biểu diễn câu truy vấn về các quan hệ Ệ Ệ LI LI • Bao gồmtậphợp các phép toán đượcápdụng trên các thể Ữ Ữ D D hiệncủaquanhệ. Kếtquả trả về củamộtcâutruyvấnlà Ở Ở mộtthể hiện của quan hệ S S QUAN H QUAN H Ơ Ơ • Chuỗi các phép toán đại số quan hệ hình thành nên biểu Ố Ố N C N C thức đại số quan hệ (câu truy vấn) mà kết quả của nó cũng I S I S Ầ Ầ Ạ Ạ trả về một thể hiện của quan hệ Đ Đ C PH • Có 3 nhóm phép toán C PH Ữ Ữ Ọ Ọ •Phép toán quan hệ •Phép toán tập hợp NG H NG H Ả Ả •Phép toán khác I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN H3HỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (3)(3)
- Giới thiệu U U Ệ Ệ • Có 2 loại xử lý trên CSDL Ệ Ệ LI LI – Làm thay đổi dữ liệu (cập nhật) Ữ Ữ D D • Thêm mới, xóa và sửa Ở Ở S S – Không làm thay đổi dữ liệu (rút trích) QUAN H QUAN H Ơ Ơ Ố Ố • Truy vấn/mẫu hỏi (Query) N C N C I S I S Ầ Ầ • Thực hiện các xử lý Ạ Ạ Đ Đ Sử dụng ngôn ngữ truy vấn (Query Language) Æ cho phép người C PH C PH Ữ Ữ dùng thực hiện và rút trích dữ liệu từ CSDL. Bao gồm: Ọ Ọ – Đại số quan hệ (Relational Algebra) NG H NG H Ả Ả – Phép tính quan hệ (Relational Calculus) I GI I GI NGÔN NG NGÔN NG À À Cơ sở của các ngôn ngữ CSDL ví dụ như SQL B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN H4HỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (4)(4)
- Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CCƠƠ SSỞỞ DDỮỮ LILIỆỆUU ĐĐạạii ssốố quanquan hhệệ (Relational(Relational AlgebraAlgebra)) • Giới thiệu về Đại số quan hệ • Các phép toán quan hệ • Các phép toán khác
- Các phép toán trên quan hệ U U Yêu cầu truy vấn: Liệt kê danh sách sinh viên thuộc ngành Ệ Ệ Ệ Ệ LI LI “SP101” Ữ Ữ Thực hiện CHỌN các dòng trong quan hệ SinhVien thỏa D D mãn điều kiện MANGANH = ‘SP101’ Ở Ở S S QUAN H QUAN H 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) Ơ Ơ Ố Ố N C N C MASV HOTEN PHAI NGAYSINH MANGANH I S I S Ầ Ầ Ạ Ạ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 Đ Đ C PH C PH Ữ Ữ K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 Ọ Ọ K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 NG H NG H K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 Ả Ả I GI I GI K29.201.001 Ly Thanh Nam 3/8/1979 SP201 NGÔN NG NGÔN NG À À B B K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN H6HỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (6)(6)
- Các phép toán trên quan hệ U U Yêu cầu truy vấn: Liệt kê danh sách sinh viên thuộc ngành Ệ Ệ Ệ Ệ LI LI “SP101” Ữ Ữ Thực hiện CHỌN các dòng trong quan hệ SinhVien thỏa D D mãn điều kiện MANGANH = ‘SP101’ Ở Ở S S QUAN H QUAN H 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) Ơ Ơ Ố Ố N C N C MASV HOTEN PHAI NGAYSINH MANGANH I S I S Ầ Ầ Ạ Ạ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 Đ Đ C PH C PH Ữ Ữ K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 Ọ Ọ K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 NG H NG H K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 Ả Ả I GI I GI K29.201.001 Ly Thanh Nam 3/8/1979 SP201 NGÔN NG NGÔN NG À À B B K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN H7HỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (7)(7)
- Các phép toán trên quan hệ U U Yêu cầu truy vấn: Liệt kê danh sách sinh viên thuộc ngành Ệ Ệ Ệ Ệ LI LI “SP101” Ữ Ữ D D Thực hiện CHỌN các dòng trong quan hệ SinhVien thỏa Ở Ở mãn điều kiện MANGANH = ‘SP101’ S S QUAN H QUAN H Ơ Ơ Ố Ố N C N C Kết quả I S I S Ầ Ầ Ạ Ạ MASV HOTEN PHAI NGAYSINH MANGANH Đ Đ C PH C PH Ữ Ữ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 Ọ Ọ K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 NG H NG H Ả Ả I GI I GI NGÔN NG NGÔN NG À À B B Thực hiện PHÉP CHỌN trên quan hệ SINHVIEN TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN H8HỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (8)(8)
- Phép chọn U U Ệ Ệ • Được dùng để lấy ra các bộ của quan hệ R Ệ Ệ LI LI • Các bộ được chọn phải thỏa mãn điều kiện chọn P Ữ Ữ D D • Ký hiệu Ở Ở S S QUAN H QUAN H (R) Ơ Ơ σ P Ố Ố N C N C I S I S • P là biểu thức gồm các mệnh đề có dạng Ầ Ầ Ạ Ạ Đ Đ – C PH C PH Ữ Ữ Ọ Ọ – NG H NG H Ả Ả • gồm có: , ≤ , ≥ , ≠ , = I GI I GI • Các mệnh đề có thể được nối lại nhờ các phép NGÔN NG NGÔN NG À À B B toán luận lý: ∧ (and) , ∨ (or) , ¬ (not) TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN H9HỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (9)(9)
- Phép chọn (tt) U U Ệ Ệ Ệ Ệ • Kết quả của phép chọn là một quan LI LI Ữ Ữ hệ D D Ở Ở – Có cùng danh sách thuộc tính với R S S QUAN H QUAN H Ơ Ơ Ố – Có số bộ luôn ít hơn hoặc bằng số bộ của Ố N C N C I S I S R Ầ Ầ Ạ Ạ Đ Đ C PH C PH Ữ Ữ Ọ Ọ NG H NG H Ả Ả I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN10 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (10)(10)
- Phép chọn U U Yêu cầu truy vấn: Liệt kê danh sách sinh viên thuộc ngành Ệ Ệ Ệ Ệ LI LI “SP101” Ữ Ữ D D Thực hiện CHỌN các dòng trong quan hệ SinhVien thỏa Ở Ở mãn điều kiện MANGANH = ‘SP101’ S S QUAN H QUAN H Ơ Ơ Ố Ố Kết quả N C N C I S I S Ầ Ầ MASV HOTEN PHAI NGAYSINH MANGANH Ạ Ạ Đ Đ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 C PH C PH Ữ Ữ Ọ Ọ K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 NG H NG H Ả Ả Thực hiện PHÉP CHỌN trên quan hệ SINHVIEN I GI I GI với điều kiện chọn MANGANH = ‘SP101’ NGÔN NG NGÔN NG À À B B σ MANGANH = ‘SP101’ (SINHVIEN) TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN11 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (11)(11)
- Phép chọn (tt) U U Ệ Ệ Ệ Ệ LI LI • Phép chọn có tính giao hoán Ữ Ữ D D Ở Ở S S ( (R)) = ( (R)) QUAN H QUAN H σ p1 σ p2 σ p2 σ p1 Ơ Ơ Ố Ố Ví dụ: N C N C I S I S Ầ Ầ Yêu cầu truy vấn: Liệt kê danh sách sinh viên Nam thuộc ngành Ạ Ạ Đ Đ “SP101” C PH C PH Ữ Ữ Ọ Ọ σ PHAI = ‘NAM’ ∧ MANGANH = ‘SP101’ (SINHVIEN) NG H NG H Ả Ả I GI I GI σ PHAI = ‘NAM’ (σ MANGANH = ‘SP101’ (SINHVIEN)) NGÔN NG NGÔN NG À À B B σ NGANH = ‘SP101’ (σ PHAI = ‘NAM’ (SINHVIEN)) TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN12 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (12)(12)
- Các phép toán trên quan hệ U Yêu cầu truy vấn: Liệt kê danh sách sinh viên (MASV, HOTEN, U Ệ Ệ Ệ Ệ NGAYSINH) LI LI Ữ Ữ Thực hiện CHỌN các CỘT (MASV, HOTEN, NGAYSINH) trong D D quan hệ SinhVien Ở Ở S S QUAN H QUAN H 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) Ơ Ơ Ố Ố N C N C MASV HOTEN PHAI NGAYSINH MANGANH I S I S Ầ Ầ Ạ Ạ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 Đ Đ C PH C PH Ữ Ữ K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 Ọ Ọ K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 NG H NG H K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 Ả Ả I GI I GI K29.201.001 Ly Thanh Nam 3/8/1979 SP201 NGÔN NG NGÔN NG À À B B K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN13 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (13)(13)
- Các phép toán trên quan hệ U Yêu cầu truy vấn: Liệt kê danh sách sinh viên (MASV, HOTEN, U Ệ Ệ Ệ Ệ NGAYSINH) LI LI Ữ Ữ Thực hiện CHỌN các CỘT (MASV, HOTEN, NGAYSINH) trong D D quan hệ SinhVien Ở Ở S S QUAN H QUAN H 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) Ơ Ơ Ố Ố N C N C MASV HOTEN PHAI NGAYSINH MANGANH I S I S Ầ Ầ Ạ Ạ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 Đ Đ C PH C PH Ữ Ữ K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 Ọ Ọ K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 NG H NG H K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 Ả Ả I GI I GI K29.201.001 Ly Thanh Nam 3/8/1979 SP201 NGÔN NG NGÔN NG À À B B K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN14 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (14)(14)
- Các phép toán trên quan hệ U Yêu cầu truy vấn: Liệt kê danh sách sinh viên (MASV, HOTEN, U Ệ Ệ Ệ Ệ NGAYSINH) LI LI Ữ Ữ D D Kết quả MASV HOTEN NGAYSINH Ở Ở K29.101.001 Nguyen Cong Phu 10/10/1979 S S QUAN H QUAN H Ơ Ơ Ố Ố K29.101.002 Phan Anh Khanh 1/10/1979 N C N C I S I S Ầ Ầ K29.103.001 Han Quoc Viet 3/2/1979 Ạ Ạ Đ Đ K29.103.002 Pham Khanh Nhu 10/12/1979 C PH C PH Ữ Ữ Ọ Ọ K29.201.001 Ly Thanh 3/8/1979 K29.201.002 Tran Ngoc Dung 4/5/1979 NG H NG H Ả Ả K29.104.001 Ho Anh Thu 1/4/1979 I GI I GI NGÔN NG NGÔN NG À À B B Thực hiện PHÉP CHIẾU trên tập thuộc tính MASV, HOTEN, NGAYSINH quan hệ SINHVIEN TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN15 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (15)(15)
- Phép chiếu U U Ệ Ệ Ệ Ệ • Được dùng để lấy ra một vài cột của quan LI LI Ữ Ữ hệ R D D Ở Ở • Ký hiệu πA1, A2, , Ak(R) S S QUAN H QUAN H Ơ Ơ • Kết quả phép chiếu cũng là một quan hệ Ố Ố N C N C I S I S – Có k thuộc tính Ầ Ầ Ạ Ạ Đ Đ – Có số bộ luôn ít hơn hoặc bằng số bộ của R C PH C PH Ữ Ữ Ọ Ọ • Ví dụ R ABC R’ A C α 10 1 α 1 NG H NG H α 20 1 α 1 Ả Ả β 30 1 πA,C (R) β 1 I GI I GI NGÔN NG NGÔN NG β 40 2 β 2 À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN16 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (16)(16)
- Phép chiếu U Yêu cầu truy vấn: Liệt kê danh sách sinh viên (MASV, HOTEN, U Ệ Ệ Ệ Ệ NGAYSINH) LI LI MASV HOTEN NGAYSINH Ữ Ữ D D Kết quả K29.101.001 Nguyen Cong Phu 10/10/1979 Ở Ở S S QUAN H QUAN H K29.101.002 Phan Anh Khanh 1/10/1979 Ơ Ơ Ố Ố K29.103.001 Han Quoc Viet 3/2/1979 N C N C I S I S Ầ Ầ Ạ Ạ K29.103.002 Pham Khanh Nhu 10/12/1979 Đ Đ K29.201.001 Ly Thanh 3/8/1979 C PH C PH Ữ Ữ Ọ Ọ K29.201.002 Tran Ngoc Dung 4/5/1979 NG H NG H K29.104.001 Ho Anh Thu 1/4/1979 Ả Ả I GI I GI Thực hiện PHÉP CHIẾU trên tập thuộc tính MASV, HOTEN, NGÔN NG NGÔN NG À À NGAYSINH quan hệ SINHVIEN B B π MASV, HOTEN, NGAYSINH (SINHVIEN) TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN17 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (17)(17)
- Phép chiếu (tt) U U Ệ Ệ Ệ Ệ • Phép chiếu không có tính giao hoán LI LI Ữ Ữ D D Ở Ở S S (R) = ( (R)) QUAN H πX,Y πX πY QUAN H Ơ Ơ Ố Ố N C N C I S I S Ầ Ầ Ạ Ạ Đ Đ C PH ( (R)) (R C PH πA1, A2, , An πA1, A2, , Am ≠ πA1, A2, , Am(πA1, A2, , An )) Ữ Ữ Ọ Ọ NG H NG H Ả Ả I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN18 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (18)(18)
- Phép chiếu mở rộng U U Ệ Ệ Ệ Ệ • Mở rộng phép chiếu bằng cách cho LI LI Ữ Ữ phép sử dụng các phép toán số học D D Ở Ở trong danh sách thuộc tính S S QUAN H QUAN H Ơ Ơ Ố Ố •Ký hiệu πF1, F2, , Fn (E) N C N C I S I S Ầ Ầ Ạ Ạ – E là biểu thức ĐSQH Đ Đ C PH C PH – F1, F2, , Fn là các biểu thức số học liên Ữ Ữ Ọ Ọ quan đến: NG H NG H • Hằng số Ả Ả • Thuộc tính trong E I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN19 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (19)(19)
- Các phép toán trên quan hệ U U Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, Ệ Ệ Ệ Ệ LI LI TENNGANH) sinh viên Ữ Ữ D D 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) Ở Ở S S QUAN H QUAN H MASV HOTEN PHAI NGAYSINH MANGANH Ơ Ơ Ố Ố K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 N C N C K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 I S I S Ầ Ầ Ạ Ạ K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 Đ Đ K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 C PH C PH Ữ Ữ Ọ K29.201.001 Ly Thanh Nam 3/8/1979 SP201 Ọ K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 NG H NG H Ả Ả I GI I GI Thuộc tính MAVS, HOTEN, NGAYSINH thuộc quan hệ NGÔN NG NGÔN NG À À B B SINHVIEN Thuộc tính TENNGANH thuộc quan hệ NGANH TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN20 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (20)(20)
- Các phép toán trên quan hệ U U Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, Ệ Ệ Ệ Ệ LI LI TENNGANH) sinh viên Ữ Ữ D D MaSV, HoTen, NgaySinh TENNGANH Ở Ở S S QUAN H QUAN H MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV Ơ Ơ Ố SP103 Sư Phạm Tin học 8 800 Ố K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 N C SP101 Sư Phạm Toán 5 1000 N C I S I S Ầ Ầ K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 Ạ Ạ SP201 Sư Phạm Hóa 3 1500 Đ Đ K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 SP102 Sư Phạm Lý 4 1200 C PH C PH Ữ Ữ Ọ Ọ K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 CNTT Khoa học máy tính 8 160 K29.201.001 Ly Thanh Nam 3/8/1979 SP201 NG H NG H SP104 Sư Phạm Lý 6 1000 K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 Ả Ả SP105 Sư phạm Anh 2 1100 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 I GI I GI NGÔN NG NGÔN NG À À B B Làm thế nào để liên kết 2 quan hệ SINHVIEN và NGANH ? TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN21 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (21)(21)
- Các phép toán trên quan hệ U U Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, Ệ Ệ Ệ Ệ LI LI TENNGANH) sinh viên Ữ Ữ D D 1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng Ở Ở MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV S S QUAN H QUAN H Ơ Ơ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP103 Sư Phạm Tin 8 800 học Ố Ố K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP101 Sư Phạm Toán 5 1000 N C N C I S I S Ầ Ầ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP201 Sư Phạm Hóa 3 1500 Ạ Ạ Đ Đ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP102 Sư Phạm Lý 4 1200 C PH C PH Ữ Ữ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 CNTT Khoa học máy 8 160 Ọ Ọ tính K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP104 Sư Phạm Lý 6 1000 K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP105 Sư phạm Anh 2 1100 NG H NG H Ả Ả K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP103 Sư Phạm Tin 8 800 học I GI I GI K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP101 Sư Phạm Toán 5 1000 NGÔN NG NGÔN NG À À B B K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP201 Sư Phạm Hóa 3 1500 TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN22 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (22)(22)
- Các phép toán trên quan hệ U U Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, Ệ Ệ Ệ Ệ LI LI TENNGANH) sinh viên Ữ Ữ D D 1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng Ở Ở S S QUAN H QUAN H Ơ Kết quả truy vấn: 7 dòng (những dòng có MANGANH = MANGANH) Ơ Ố Ố N C N C I S I S MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV Ầ Ầ Ạ Ạ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP103 Sư Phạm Tin 8 800 Đ Đ học C PH C PH K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP101 Sư Phạm Toán 5 1000 Ữ Ữ Ọ Ọ K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP201 Sư Phạm Hóa 3 1500 K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 SP102 Sư Phạm Lý 4 1200 NG H NG H Ả Ả K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 CNTT Khoa học máy 8 160 tính K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP101 Sư Phạm Toán 5 1000 I GI I GI NGÔN NG NGÔN NG À À K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP201 Sư Phạm Hóa 3 1500 B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN23 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (23)(23)
- Các phép toán trên quan hệ U U Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, Ệ Ệ Ệ Ệ TENNGANH) sinh viên LI LI Ữ Ữ D D 2. Cách 2: SinhVien Nganh 7 x 1 = 7 dòng Ở Ở S S QUAN H QUAN H MASV HOTEN PHAI NGAYSINH MANGANH MANGANH TENNGANH SOCD TSSV Ơ Ơ Ố Ố SP103 Sư Phạm Tin học 8 800 K29.101.001 Nguyen Cong Phu Nam 10/10/1979 SP101 N C N C I S I S Ầ Ầ K29.101.002 Phan Anh Khanh Nu 1/10/1979 SP101 SP101 Sư Phạm Toán 5 1000 Ạ Ạ Đ Đ SP201 Sư Phạm Hóa 3 1500 K29.103.001 Han Quoc Viet Nam 3/2/1979 SP103 C PH C PH Ữ Ữ Ọ Ọ K29.103.002 Pham Khanh Nhu Nu 10/12/1979 SP103 SP102 Sư Phạm Lý 4 1200 K29.201.001 Ly Thanh Nam 3/8/1979 SP201 CNTT Khoa học máy tính 8 160 NG H NG H Ả Ả K29.201.002 Tran Ngoc Dung Nu 4/5/1979 SP201 SP104 Sư Phạm Lý 6 1000 K29.104.001 Ho Anh Thu Nu 1/4/1979 SP104 I GI I GI SP105 Sư phạm Anh 2 1100 NGÔN NG NGÔN NG À À B B Thực hiện PHÉP KẾT thuộc tính MANGANH của quan hệ SINHVIEN với MANGANH của quan hệ NGANH TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN24 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (24)(24)
- Phép kết U U Ệ Ệ • Được dùng để tổ hợp 2 bộ có liên quan từ 2 quan Ệ Ệ LI LI hệ thành 1 bộ Ữ Ữ D D • Ký hiệu R S Ở Ở – R(A1, A2, , An) và S(B1, B2, , Bm) S S QUAN H QUAN H Ơ Ơ • 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) N C N C I S I S Ầ Ầ – 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 PH C PH • Có dạng A θ B Ữ Ữ i j Ọ Ọ • 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ị NG H NG H • θ là phép so sánh: ≠, =, , ≤, ≥ Ả Ả I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN25 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (25)(25)
- Các phép toán trên quan hệ U U Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, Ệ Ệ Ệ Ệ TENNGANH) sinh viên LI LI Ữ Ữ D D Thực hiện PHÉP KẾT thuộc tính MANGANH của quan hệ Ở Ở S S SINHVIEN với MANGANH của quan hệ NGANH QUAN H QUAN H Ơ Ơ Ố Ố N C N C I S I S Ầ Ầ ∏MASV, HOTEN, NGAYSINH, TENNGANH (SINHVIEN NGANH) Ạ Ạ SINHVIEN.MANGANH = NGANH.MANGANH Đ Đ C PH C PH Ữ Ữ Ọ Ọ NG H NG H Ả Ả I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN26 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (26)(26)
- Phép kết (tt) U U Ệ Ệ Ệ Ệ • Phân loại LI LI Ữ Ữ – Kết theta (Theta join) là phép kết có điều kiện D D • Ký hiệu R C S Ở Ở S S • C gọi là điều kiện kết trên thuộc tính QUAN H QUAN H Ơ Ơ Ố Ố N C N C I S I S Ầ Ầ – Kết bằng (Equi join) khi C là điều kiện so sánh bằng Ạ Ạ Đ Đ C PH C PH Ữ Ữ Ọ Ọ – Kết tự nhiên (Natural join) • Ký hiệu R S hay R ∗ S NG H NG H • R+ ∩ S+ ≠∅ Ả Ả • Kết quả của phép kết bằng bỏ bớt đi 1 cột giống nhau I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN27 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (27)(27)
- Kết hợp các phép toán U U Liệt kê danh sách chuyên đề (MACD, TENCD, SOSVTD) cần phải Ệ Ệ Ệ Ệ học của sinh viên ngành công nghệ phần mềm (TENNGANH = LI LI Ữ “CÔNG NGHỆ PHẦN MỀM”) Ữ D D Ở Ở Chiếu S S QUAN H QUAN H Ơ Ơ MACD, TENCD, SOSVTD (thuộc quan hệ CHUYENDE) Ố Ố N C N C I S I S Ầ Ầ Chọn Ạ Ạ Đ Đ TENNGANH = ‘CÔNG NGHỆ PHẦN MỀM’ C PH C PH Ữ Ữ Ọ Ọ Kết NG H NG H Ả Ả NGANH, CD_NGANH, CHUYENDE I GI I GI NGÔN NG NGÔN NG À À NGANH CD_NGANH CHUYENDE MANGANH = MANGANH MACD = MACD B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN28 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (28)(28)
- Kết hợp các phép toán U U Liệt kê danh sách chuyên đề (MACD, TENCD, SOSVTD) cần phải Ệ Ệ Ệ Ệ học của sinh viên ngành công nghệ phần mềm (TENNGANH = LI LI Ữ “CÔNG NGHỆ PHẦN MỀM”) Ữ D D Ở Ở S S QUAN H QUAN H Ơ Ơ Ố Ố N C N C I S I S Ầ Ầ Ạ Ạ Đ Đ C PH C PH Ữ Ữ Ọ Ọ NG H NG H Ả Ả I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN29 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (29)(29)
- Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CCƠƠ SSỞỞ DDỮỮ LILIỆỆUU ĐĐạạii ssốố quanquan hhệệ (Relational(Relational AlgebraAlgebra)) • Giới thiệu về Đại số quan hệ • Các phép toán quan hệ • Các phép toán khác • Các thao tác cập nhật trên quan hệ
- Hàm kết hợp U U Ệ Ệ Ệ Ệ LI LI • Nhận vào tập hợp các giá trị và trả về Ữ Ữ D D một giá trị đơn Ở Ở S S • AVG(A): A là thuộc tính kiểu số QUAN H QUAN H Ơ Ơ Ố Ố •MIN(A): A là thuộc tính kiểu số N C N C I S I S Ầ Ầ Ạ Ạ •MAX(A): A là thuộc tính kiểu số Đ Đ C PH C PH Ữ Ữ Ọ •SUM(A): A là thuộc tính kiểu số Ọ •COUNT(A): A có kiểu bất kỳ NG H NG H Ả Ả I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN31 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (31)(31)
- Hàm kết hợp U U Ệ Ệ Ệ Ệ • Ví dụ LI LI Ữ Ữ D D SUM(B) = 10 R AB Ở Ở S S AVG(A) = 1.5 QUAN H QUAN H 1 2 Ơ Ơ Ố Ố 3 4 MIN(A) = 1 N C N C 1 2 I S I S Ầ Ầ Ạ Ạ 1 2 MAX(B) = 4 Đ Đ C PH C PH Ữ Ữ COUNT(A) = 4 Ọ Ọ NG H NG H Cho biết lương cao nhất của các nhân viên công ty Ả Ả I GI I GI NGÔN NG NGÔN NG À À MAX(π (NHANVIEN)) B Luong B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN32 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (32)(32)
- Phép gom nhóm (T) U U •Được dùng để phân chia quan hệ thành nhiều Ệ Ệ Ệ Ệ LI LI nhóm dựa trên điều kiện gom nhóm nào đó Ữ Ữ D D •Ký hiệu Ở Ở S S QUAN H QUAN H G1, G2, , Gn (E) Ơ Ơ TF1(A1), F2(A2), , Fn(An) Ố Ố N C N C –E là biểu thức ĐSQH I S I S Ầ Ầ Ạ Ạ –G1, G2, , Gn là các thuộc tính gom nhóm Đ Đ C PH C PH –F1, F2, , Fn là các hàm Ữ Ữ Ọ Ọ –A1, A2, , An là các thuộc tính tính toán trong hàm F NG H NG H Ả Ả I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN33 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (33)(33)
- Phép gom nhóm (tt) U U Ệ Ệ Ệ Ệ LI LI •Ví dụ Ữ Ữ D D R ABC Ở Ở ISUM(C)(R) S S QUAN H QUAN H α 2 7 Ơ Ơ Ố Ố α 4 7 Kết quả N C N C I S I S Ầ Ầ β 2 3 Ạ Ạ I (R) = 27 Đ Đ SUM(C) γ 2 10 C PH C PH Ữ Ữ Ọ Ọ NG H NG H A SUM(C) Ả Ả 14 A (R) α I GI Kết quả I GI ISUM(C) NGÔN NG NGÔN NG À À 3 B B β γ 10 TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN34 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (34)(34)
- Phép gom nhóm U U Liệt kê danh sách tên chuyên đề (TENCD) và số lần Ệ Ệ Ệ Ệ LI LI được mở tương ứng theo từng ngành (TENNGANH) Ữ Ữ D D Chiếu Ở Ở S S TENNGANH: thuộc quan hệ NGANH QUAN H QUAN H Ơ Ơ Ố Ố TENCD: thuộc quan hệ CHUYENDE N C N C I S I S Ầ Ầ COUNT(MACD): thuộc quan hệ CD_MO Ạ Ạ Đ Đ C PH C PH Ữ Ữ Kết Ọ Ọ NGANH, CD_NGANH, CHUYENDE, CD_MO NG H CD_NGANH NGANH NG H MANGANH = MANGANH Ả Ả I GI I GI NGÔN NG NGÔN NG À À MACD = MACD B B CHUYENDE CD_MO MACD = MACD TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN35 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (35)(35)
- Phép gom nhóm U U Liệt kê danh sách tên chuyên đề (TENCD) và số lần Ệ Ệ Ệ Ệ LI LI được mở tương ứng theo từng ngành (TENNGANH) Ữ Ữ D D Ở Ở S S QUAN H QUAN H Ơ Ơ Ố Ố N C N C I S I S Ầ Ầ Ạ Ạ Đ Đ C PH C PH Ữ Ữ Ọ Ọ NG H NG H Ả Ả I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN36 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (36)(36)
- U U Ệ Ệ Ệ Ệ LI LI Ữ Ữ D D Ở Ở S S QUAN H QUAN H Ơ Ơ Ố Ố N C N C I S I S Ầ Ầ Ạ Ạ Đ Đ C PH C PH Ữ Ữ Ọ Ọ NG H NG H Ả Ả I GI I GI NGÔN NG NGÔN NG À À B B TRTRẦẦNN NGNGỌỌCC BBẢẢOO KHOAKHOA TOTOÁNÁN TINTIN37 HHỌỌCC ĐĐẠẠII HHỌỌCC SSƯƯ PHPHẠẠMM TP.HCMTP.HCM (37)(37)