Cấu trúc dữ liệu và giải thuật - Đại số quan hệ (Relational Algebra)

Làngôn ngữbiểu diễn câu truy vấnvềcác quan hệ

•Bao gồmtậphợp các phép toánđượcáp dụng trên các thể

hiệncủaquanhệ. Kếtquảtrảvềcủamộtcâu truyvấnlà

mộtthểhiện của quan hệ

•Chuỗi các phép toán đại sốquan hệhình thành nên biểu

thức đại sốquan hệ(câu truy vấn) mà kết quảcủa nó cũng

trảvềmột thểhiệncủa quan hệ

pdf37 trang | Chia sẻ: Mr Hưng | Lượt xem: 934 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu Cấu trúc dữ liệu và giải thuật - Đại số quan hệ (Relational Algebra), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CƠ SỞ DỮ LIỆU Trần Ngọc Bảo Email: tnbao.dhsp@gmail.com Đại số quan hệ (Relational Algebra) • 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 Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CƠ SỞ DỮ LIỆU Đại số quan hệ (Relational Algebra) 3TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (3) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Đại số quan hệ • Là ngôn ngữ biểu diễn câu truy vấn về các quan hệ • Bao gồm tập hợp các phép toán được áp dụng trên các thể hiện của quan hệ. Kết quả trả về của một câu truy vấn là một thể hiện của quan hệ • Chuỗi các phép toán đại số quan hệ hình thành nên biểu thức đại số quan hệ (câu truy vấn) mà kết quả của nó cũng trả về một thể hiện của quan hệ • Có 3 nhóm phép toán •Phép toán quan hệ •Phép toán tập hợp •Phép toán khác 4TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (4) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ • Có 2 loại xử lý trên CSDL – Làm thay đổi dữ liệu (cập nhật) • Thêm mới, xóa và sửa – Không làm thay đổi dữ liệu (rút trích) • Truy vấn/mẫu hỏi (Query) • Thực hiện các xử lý Sử dụng ngôn ngữ truy vấn (Query Language) Æ cho phép người 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) – Phép tính quan hệ (Relational Calculus) Giới thiệu Cơ sở của các ngôn ngữ CSDL ví dụ như SQL • 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 Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CƠ SỞ DỮ LIỆU Đại số quan hệ (Relational Algebra) 6TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (6) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Yêu cầu truy vấn: Liệt kê danh sách sinh viên thuộc ngành “SP101” Các phép toán trên quan hệ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) SP1041/4/1979NuHo Anh ThuK29.104.001 SP2014/5/1979NuTran Ngoc DungK29.201.002 SP2013/8/1979NamLy ThanhK29.201.001 SP10310/12/1979NuPham Khanh NhuK29.103.002 SP1033/2/1979NamHan Quoc VietK29.103.001 SP1011/10/1979NuPhan Anh KhanhK29.101.002 SP10110/10/1979NamNguyen Cong PhuK29.101.001 MANGANHNGAYSINHPHAIHOTENMASV Thực hiện CHỌN các dòng trong quan hệ SinhVien thỏa mãn điều kiện MANGANH = ‘SP101’ 7TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (7) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Yêu cầu truy vấn: Liệt kê danh sách sinh viên thuộc ngành “SP101” Các phép toán trên quan hệ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) SP1041/4/1979NuHo Anh ThuK29.104.001 SP2014/5/1979NuTran Ngoc DungK29.201.002 SP2013/8/1979NamLy ThanhK29.201.001 SP10310/12/1979NuPham Khanh NhuK29.103.002 SP1033/2/1979NamHan Quoc VietK29.103.001 SP1011/10/1979NuPhan Anh KhanhK29.101.002 SP10110/10/1979NamNguyen Cong PhuK29.101.001 MANGANHNGAYSINHPHAIHOTENMASV Thực hiện CHỌN các dòng trong quan hệ SinhVien thỏa mãn điều kiện MANGANH = ‘SP101’ 8TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (8) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Yêu cầu truy vấn: Liệt kê danh sách sinh viên thuộc ngành “SP101” Các phép toán trên quan hệ SP1011/10/1979NuPhan Anh KhanhK29.101.002 SP10110/10/1979NamNguyen Cong PhuK29.101.001 MANGANHNGAYSINHPHAIHOTENMASV Thực hiện CHỌN các dòng trong quan hệ SinhVien thỏa mãn điều kiện MANGANH = ‘SP101’ Kết quả Thực hiện PHÉP CHỌN trên quan hệ SINHVIEN 9TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (9) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ 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 là biểu thức gồm các mệnh đề có dạng – – <tên thuộc tính> • gồm có: , ≤ , ≥ , ≠ , = • Các mệnh đề có thể được nối lại nhờ các phép toán luận lý: ∧ (and) , ∨ (or) , ¬ (not) σ P (R) 10TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (10) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Phép chọn (tt) • Kết quả của phép chọn 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 11TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (11) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Yêu cầu truy vấn: Liệt kê danh sách sinh viên thuộc ngành “SP101” Phép chọn SP1011/10/1979NuPhan Anh KhanhK29.101.002 SP10110/10/1979NamNguyen Cong PhuK29.101.001 MANGANHNGAYSINHPHAIHOTENMASV Thực hiện CHỌN các dòng trong quan hệ SinhVien thỏa mãn điều kiện MANGANH = ‘SP101’ Kết quả σ MANGANH = ‘SP101’ (SINHVIEN) Thực hiện PHÉP CHỌN trên quan hệ SINHVIEN với điều kiện chọn MANGANH = ‘SP101’ 12TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (12) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Phép chọn (tt) • Phép chọn có tính giao hoán σ p1 (σ p2 (R)) = σ p2 (σ p1 (R)) σ PHAI = ‘NAM’ ∧ MANGANH = ‘SP101’ (SINHVIEN) Ví dụ: Yêu cầu truy vấn: Liệt kê danh sách sinh viên Nam thuộc ngành “SP101” σ PHAI = ‘NAM’ (σ MANGANH = ‘SP101’ (SINHVIEN)) σ NGANH = ‘SP101’ (σ PHAI = ‘NAM’ (SINHVIEN)) 13TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (13) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Yêu cầu truy vấn: Liệt kê danh sách sinh viên (MASV, HOTEN, NGAYSINH) Các phép toán trên quan hệ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) SP1041/4/1979NuHo Anh ThuK29.104.001 SP2014/5/1979NuTran Ngoc DungK29.201.002 SP2013/8/1979NamLy ThanhK29.201.001 SP10310/12/1979NuPham Khanh NhuK29.103.002 SP1033/2/1979NamHan Quoc VietK29.103.001 SP1011/10/1979NuPhan Anh KhanhK29.101.002 SP10110/10/1979NamNguyen Cong PhuK29.101.001 MANGANHNGAYSINHPHAIHOTENMASV Thực hiện CHỌN các CỘT (MASV, HOTEN, NGAYSINH) trong quan hệ SinhVien 14TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (14) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Yêu cầu truy vấn: Liệt kê danh sách sinh viên (MASV, HOTEN, NGAYSINH) Các phép toán trên quan hệ 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) SP1041/4/1979NuHo Anh ThuK29.104.001 SP2014/5/1979NuTran Ngoc DungK29.201.002 SP2013/8/1979NamLy ThanhK29.201.001 SP10310/12/1979NuPham Khanh NhuK29.103.002 SP1033/2/1979NamHan Quoc VietK29.103.001 SP1011/10/1979NuPhan Anh KhanhK29.101.002 SP10110/10/1979NamNguyen Cong PhuK29.101.001 MANGANHNGAYSINHPHAIHOTENMASV Thực hiện CHỌN các CỘT (MASV, HOTEN, NGAYSINH) trong quan hệ SinhVien 15TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (15) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Yêu cầu truy vấn: Liệt kê danh sách sinh viên (MASV, HOTEN, NGAYSINH) Các phép toán trên quan hệ 1/4/1979Ho Anh ThuK29.104.001 4/5/1979Tran Ngoc DungK29.201.002 3/8/1979Ly ThanhK29.201.001 10/12/1979Pham Khanh NhuK29.103.002 3/2/1979Han Quoc VietK29.103.001 1/10/1979Phan Anh KhanhK29.101.002 10/10/1979Nguyen Cong PhuK29.101.001 NGAYSINHHOTENMASVKết quả Thực hiện PHÉP CHIẾU trên tập thuộc tính MASV, HOTEN, NGAYSINH quan hệ SINHVIEN 16TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (16) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Phép chiếu • Được dùng để lấy ra một vài cột của quan hệ R • Ký hiệu • Kết quả phép chiếu cũng 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 • Ví dụ πA1, A2, , Ak(R) A B α R α β 10 20 30 C 1 1 1 β 40 2 πA,C (R) A α R’ α β C 1 1 1 β 2 17TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (17) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Yêu cầu truy vấn: Liệt kê danh sách sinh viên (MASV, HOTEN, NGAYSINH) 1/4/1979Ho Anh ThuK29.104.001 4/5/1979Tran Ngoc DungK29.201.002 3/8/1979Ly ThanhK29.201.001 10/12/1979Pham Khanh NhuK29.103.002 3/2/1979Han Quoc VietK29.103.001 1/10/1979Phan Anh KhanhK29.101.002 10/10/1979Nguyen Cong PhuK29.101.001 NGAYSINHHOTENMASVKết quả Thực hiện PHÉP CHIẾU trên tập thuộc tính MASV, HOTEN, NGAYSINH quan hệ SINHVIEN Phép chiếu π MASV, HOTEN, NGAYSINH (SINHVIEN) 18TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (18) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Phép chiếu (tt) • Phép chiếu không có tính giao hoán πA1, A2, , An(πA1, A2, , Am(R)) ≠ πA1, A2, , Am(πA1, A2, , An(R)) πX,Y (R) = πX (πY (R)) 19TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (19) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ 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 πF1, F2, , Fn (E) – 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 20TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (20) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, TENNGANH) sinh viên 1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, MANGANH) SP1041/4/1979NuHo Anh ThuK29.104.001 SP2014/5/1979NuTran Ngoc DungK29.201.002 SP2013/8/1979NamLy ThanhK29.201.001 SP10310/12/1979NuPham Khanh NhuK29.103.002 SP1033/2/1979NamHan Quoc VietK29.103.001 SP1011/10/1979NuPhan Anh KhanhK29.101.002 SP10110/10/1979NamNguyen Cong PhuK29.101.001 MANGANHNGAYSINHPHAIHOTENMASV Các phép toán trên quan hệ Thuộc tính MAVS, HOTEN, NGAYSINH thuộc quan hệ SINHVIEN Thuộc tính TENNGANH thuộc quan hệ NGANH 21TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (21) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, TENNGANH) sinh viên SP1041/4/1979NuHo Anh ThuK29.104.001 SP2014/5/1979NuTran Ngoc DungK29.201.002 SP2013/8/1979NamLy ThanhK29.201.001 SP10310/12/1979NuPham Khanh NhuK29.103.002 SP1033/2/1979NamHan Quoc VietK29.103.001 SP1011/10/1979NuPhan Anh KhanhK29.101.002 SP10110/10/1979NamNguyen Cong PhuK29.101.001 MANGANHNGAYSINHPHAIHOTENMASV 11002Sư phạm AnhSP105 10006Sư Phạm LýSP104 1608Khoa học máy tínhCNTT 12004Sư Phạm LýSP102 15003Sư Phạm HóaSP201 10005Sư Phạm ToánSP101 8008Sư Phạm Tin họcSP103 TSSVSOCDTENNGANHMANGANH MaSV, HoTen, NgaySinh TENNGANH Làm thế nào để liên kết 2 quan hệ SINHVIEN và NGANH ? Các phép toán trên quan hệ 22TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (22) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ .. 15003Sư Phạm HóaSP201SP1011/10/1979NuPhan Anh KhanhK29.101.002 10005Sư Phạm ToánSP101SP1011/10/1979NuPhan Anh KhanhK29.101.002 8008Sư Phạm Tin học SP103SP1011/10/1979NuPhan Anh KhanhK29.101.002 Sư phạm Anh Sư Phạm Lý Khoa học máy tính Sư Phạm Lý Sư Phạm Hóa Sư Phạm Toán Sư Phạm Tin học TENNGANH 2 6 8 4 3 5 8 SOCD SP105 SP104 CNTT SP102 SP201 SP101 SP103 MANGANH SP101 SP101 SP101 SP101 SP101 SP101 SP101 MANGANH 110010/10/1979NamNguyen Cong PhuK29.101.001 100010/10/1979NamNguyen Cong PhuK29.101.001 16010/10/1979NamNguyen Cong PhuK29.101.001 120010/10/1979NamNguyen Cong PhuK29.101.001 150010/10/1979NamNguyen Cong PhuK29.101.001 100010/10/1979NamNguyen Cong PhuK29.101.001 80010/10/1979NamNguyen Cong PhuK29.101.001 TSSVNGAYSINHPHAIHOTENMASV 1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, TENNGANH) sinh viên Các phép toán trên quan hệ 23TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (23) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ .. 15003Sư Phạm HóaSP201SP1011/10/1979NuPhan Anh KhanhK29.101.002 10005Sư Phạm ToánSP101SP1011/10/1979NuPhan Anh KhanhK29.101.002 Khoa học máy tính Sư Phạm Lý Sư Phạm Hóa Sư Phạm Toán Sư Phạm Tin học TENNGANH 8 4 3 5 8 SOCD CNTT SP102 SP201 SP101 SP103 MANGANH SP101 SP101 SP101 SP101 SP101 MANGANH 16010/10/1979NamNguyen Cong PhuK29.101.001 120010/10/1979NamNguyen Cong PhuK29.101.001 150010/10/1979NamNguyen Cong PhuK29.101.001 100010/10/1979NamNguyen Cong PhuK29.101.001 80010/10/1979NamNguyen Cong PhuK29.101.001 TSSVNGAYSINHPHAIHOTENMASV 1. Cách 1: SinhVien x Nganh 7 x 7 = 49 dòng Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, TENNGANH) sinh viên Kết quả truy vấn: 7 dòng (những dòng có MANGANH = MANGANH) Các phép toán trên quan hệ 24TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (24) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ SP1041/4/1979NuHo Anh ThuK29.104.001 SP2014/5/1979NuTran Ngoc DungK29.201.002 SP2013/8/1979NamLy ThanhK29.201.001 SP10310/12/1979NuPham Khanh NhuK29.103.002 SP1033/2/1979NamHan Quoc VietK29.103.001 SP1011/10/1979NuPhan Anh KhanhK29.101.002 SP10110/10/1979NamNguyen Cong PhuK29.101.001 MANGANHNGAYSINHPHAIHOTENMASV 2. Cách 2: SinhVien Nganh 7 x 1 = 7 dòng 11002Sư phạm AnhSP105 10006Sư Phạm LýSP104 1608Khoa học máy tínhCNTT 12004Sư Phạm LýSP102 15003Sư Phạm HóaSP201 10005Sư Phạm ToánSP101 8008Sư Phạm Tin họcSP103 TSSVSOCDTENNGANHMANGANH Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, TENNGANH) sinh viên 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 Các phép toán trên quan hệ 25TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (25) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Phép kết • Đượ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 – R(A1, A2, , An) và S(B1, B2, , Bm) • 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: ≠, =, , ≤, ≥ 26TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (26) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Yêu cầu truy vấn: Liệt kê danh sách (MaSV, HoTen, NgaySinh, TENNGANH) sinh viên 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 Các phép toán trên quan hệ ∏MASV, HOTEN, NGAYSINH, TENNGANH (SINHVIEN NGANH) SINHVIEN.MANGANH = NGANH.MANGANH 27TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (27) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Phép kết (tt) • Phân loại – Kết theta (Theta join) là phép kết có điều kiện • Ký hiệu R C S • 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 R S hay R ∗ S • R+ ∩ S+ ≠ ∅ • Kết quả của phép kết bằng bỏ bớt đi 1 cột giống nhau 28TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (28) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Kết hợp các phép toán 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 = “CÔNG NGHỆ PHẦN MỀM”) ‰ Chiếu MACD, TENCD, SOSVTD (thuộc quan hệ CHUYENDE) ‰ Chọn TENNGANH = ‘CÔNG NGHỆ PHẦN MỀM’ ‰ Kết NGANH, CD_NGANH, CHUYENDE MACD = MACDMANGANH = MANGANH CD_NGANH CHUYENDENGANH 29TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (29) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Kết hợp các phép toán 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 = “CÔNG NGHỆ PHẦN MỀM”) • 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ệ Đại Học Sư Phạm Tp. Hồ Chí Minh Khoa Toán – Tin Học CƠ SỞ DỮ LIỆU Đại số quan hệ (Relational Algebra) 31TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (31) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Hàm kết hợp • Nhận vào tập hợp các giá trị và trả về một giá trị đơn • AVG(A): A là thuộc tính kiểu số • MIN(A): A là thuộc tính kiểu số • MAX(A): A là thuộc tính kiểu số • SUM(A): A là thuộc tính kiểu số • COUNT(A): A có kiểu bất kỳ 32TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (32) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ • Ví dụ A B 1 R 3 2 4 1 1 2 2 SUM(B) = 10 AVG(A) = 1.5 MIN(A) = 1 MAX(B) = 4 COUNT(A) = 4 Hàm kết hợp MAX(πLuong(NHANVIEN)) Cho biết lương cao nhất của các nhân viên công ty 33TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (33) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Phép gom nhóm (T) •Được dùng để phân chia quan hệ thành nhiều nhóm dựa trên điều kiện gom nhóm nào đó •Ký hiệu –E là biểu thức ĐSQH –G1, G2, , Gn là các thuộc tính gom nhóm –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 G1, G2, , Gn TF1(A1), F2(A2), , Fn(An)(E) 34TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (34) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Phép gom nhóm (tt) •Ví dụ ISUM(C)(R) A B α R α 2 4 β γ 2 2 C 7 7 3 10 AISUM(C)(R) Kết quả ISUM(C)(R) = 27 Kết quả 10γ 3β 14α SUM(C)A 35TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (35) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Liệt kê danh sách tên chuyên đề (TENCD) và số lần được mở tương ứng theo từng ngành (TENNGANH) ‰ Chiếu TENNGANH: thuộc quan hệ NGANH TENCD: thuộc quan hệ CHUYENDE COUNT(MACD): thuộc quan hệ CD_MO ‰ Kết NGANH, CD_NGANH, CHUYENDE, CD_MO Phép gom nhóm MACD = MACD MANGANH = MANGANH MACD = MACD CD_MO CD_NGANH CHUYENDE NGANH 36TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (36) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ Liệt kê danh sách tên chuyên đề (TENCD) và số lần được mở tương ứng theo từng ngành (TENNGANH) Phép gom nhóm 37TRẦN NGỌC BẢO ” KHOA TOÁN -TIN HỌC ” ĐẠI HỌC SƯ PHẠM TP.HCM ” (37) - I I . ( ) B B À À I G I I G I Ả Ả N G H N G H Ọ Ọ C P H C P H Ầ Ầ N C Ơ S N C Ơ S Ở Ở D D Ữ Ữ L I L I Ệ Ệ U U N G Ô N N G N G Ô N N G Ữ Ữ Đ Đ Ạ Ạ I S I S Ố Ố Q U A N H Q U A N H Ệ Ệ

Các file đính kèm theo tài liệu này:

  • pdftn_dsqh_7632.pdf