Bài tập lý thuyết đại số quan hệ năm 2024

  • 1. quan hệ
  • 2. liệu - Khoa CNTT 2 Nội dung chi tiết  Giới thiệu  Đạ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 kết  Phép chia
  • 3. liệu - Khoa CNTT 3 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 5 4 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 4 Hung Nguyen 09/15/1962 Ba Ria VT Nam 38000 5 Quang Pham 11/10/1937 450 TV HN Nam 55000 1 1 Tung Nguyen 12/08/1955 Hang Bui 07/19/1968 Nhu Le 06/20/1951 Hung Nguyen 09/15/1962 Quang Pham 11/10/1937
  • 4. liệu - Khoa CNTT 4 Giới thiệu (tt)  Có 2 loại xử lý - 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 (query)  Thực hiện các xử lý - Đại số quan hệ (Relational Algebra)  Biểu diễn câu truy vấn dưới dạng biểu thức - Phép tính quan hệ (Relational Calculus)  Biểu diễn kết quả - SQL (Structured Query Language)
  • 5. liệu - Khoa CNTT 5 Nhắc lại  Đại số - Toán tử (operator) - Toán hạng (operand)  Trong số học - Toán tử: +, -, *, / - Toán hạng - biến (variables): x, y, z - Hằng (constant) - Biểu thức  (x+7) / (y-3)  (x+y)*z and/or (x+7) / (y-3)
  • 6. liệu - Khoa CNTT 6 Đại số quan hệ  Biến là các quan hệ - Tập hợp (set)  Toán tử là các phép toán (operations) - Trên tập hợp  Hội  (union)  Giao  (intersec)  Trừ  (difference) - Rút trích 1 phần của quan hệ  Chọn  (selection)  Chiếu  (projection) - Kết hợp các quan hệ  Tích Cartesian  (Cartesian product)  Kết (join) - Đổi tên 
  • 7. liệu - Khoa CNTT 7 Đại số quan hệ (tt)  Hằng số là thể hiện của quan hệ  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ệ - Kết quả trả về là một thể hiện của quan hệ
  • 8. liệu - Khoa CNTT 8 Nội dung chi tiết  Giới thiệu  Đạ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 kết  Phép chia  Các phép toán khác
  • 9. liệu - Khoa CNTT 9 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  Tính khả hợp (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)
  • 10. liệu - Khoa CNTT 10 Phép toán tập hợp (tt)  Ví dụ TENNV NGSINH PHAI Tung 12/08/1955 Nam Hang 07/19/1968 Nu Nhu 06/20/1951 Nu Hung 09/15/1962 Nam NHANVIEN TENTN NG_SINH PHAITN Trinh 04/05/1986 Nu Khang 10/25/1983 Nam Phuong 05/03/1958 Nu Minh 02/28/1942 Nam THANNHAN Chau 12/30/1988 Nu Bậc n=3 DOM(TENNV) = DOM(TENTN) DOM(NGSINH) = DOM(NG_SINH) DOM(PHAI) = DOM(PHAITN)
  • 11. liệu - Khoa CNTT 11 Phép hội  Cho 2 quan hệ R và S khả hợp  Phép hội 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ỏ)  Ví dụ R  S = { t / tR  tS } A B  R   1 2 1 C D  S  2 3 A B  R  S   1 2 1  3  2
  • 12. liệu - Khoa CNTT 12 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  Ví dụ R  S = { t / tR  tS } A B  R   1 2 1 A B  S  2 3 A B  R  S 2
  • 13. liệu - Khoa CNTT 13 Phép trừ  Cho 2 quan hệ R và S khả hợp  Phép trừ 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  Ví dụ R  S = { t / tR  tS } A B  R   1 2 1 A B  S  2 3 A B  R  S  1 1
  • 14. liệu - Khoa CNTT 14 Các tính chất  Giao hoán  Kết hợp R  S = S  R R  S = S  R R  (S  T) = (R  S)  T R  (S  T) = (R  S)  T
  • 15. liệu - Khoa CNTT 15 Nội dung chi tiết  Giới thiệu  Đạ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 kết  Phép chia  Các phép toán khác
  • 16. liệu - Khoa CNTT 16 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> <phép so sánh> <hằng số> - <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  ,  ,  P (R)
  • 17. liệu - Khoa CNTT 17 Phép chọn (tt)  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ụ (A=B)(D>5) (R) A B  R   C 1 5 12  23 D 7 7 3 10     A B  C 1  23 D 7 10  
  • 18. liệu - Khoa CNTT 18 Phép chọn (tt)  Phép chọn có tính giao hoán p1 ( p2 (R)) = p2 ( p1 (R)) = p1  p2 (R)
  • 19. liệu - Khoa CNTT 19 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 PHG=4 (NHANVIEN)
  • 20. liệu - Khoa CNTT 20 Ví dụ 2  Tìm các nhân viên có lương trên 25000 ở phòng 4 hoặc các nhân viên có lương trên 30000 ở phòng 5 - Quan hệ: NHANVIEN - Thuộc tính: LUONG, PHG - Điều kiện:  LUONG>25000 và PHG=4 hoặc  LUONG>30000 và PHG=5 (LUONG>25000  PHG=4)  (LUONG>30000  PHG=5) (NHANVIEN)
  • 21. liệu - Khoa CNTT 21 Nội dung chi tiết  Giới thiệu  Đạ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 kết  Phép chia  Các phép toán khác
  • 22. liệu - Khoa CNTT 22 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ả 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  Ví dụ A1, A2, …, Ak(R) A C  1 A B  R   10 20 30 C 1 1 1  40 2 A,C (R)  1  2  1
  • 23. liệu - Khoa CNTT 23 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, …, An (R) , với n  m X,Y (R) = X (Y (R))
  • 24. liệu - Khoa CNTT 24 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 HONV,TENNV,LUONG (NHANVIEN)
  • 25. liệu - Khoa CNTT 25 Ví dụ 4  Cho biết mã nhân viên có tham gia đề án hoặc có thân nhân MANV (PHANCONG) MANV (THANNHAN) 
  • 26. liệu - Khoa CNTT 26 Ví dụ 5  Cho biết mã nhân viên có người thân và có tham gia đề án MANV (PHANCONG) MANV (THANNHAN) 
  • 27. liệu - Khoa CNTT 27 Ví dụ 6  Cho biết mã nhân viên không có thân nhân nào MANV (NHANVIEN) MANV (THANNHAN) -
  • 28. liệu - Khoa CNTT 28 Phép chiếu tổng quát  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
  • 29. liệu - Khoa CNTT 29 Phép chiếu tổng quát (tt)  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% HONV, TENNV, LUONG*1.1 (NHANVIEN)
  • 30. liệu - Khoa CNTT 30 Chuỗi các phép toán  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 - Thực hiện từng phép toán một  B1  B2 A1, A2, …, Ak (P (R)) P (A1, A2, …, Ak (R)) P (R) A1, A2, …, Ak (Quan hệ kết quả ở B1) Cần đặt tên cho quan hệ
  • 31. liệu - Khoa CNTT 31 Phép gán  Được sử dụng để nhận lấy kết quả trả về của một phép toán - Thường là kết quả trung gian trong chuỗi các phép toán  Ký hiệu   Ví dụ - B1 - B2 S  P (R) KQ  A1, A2, …, Ak (S)
  • 32. liệu - Khoa CNTT 32 Phép đổi tên  Được dùng để đổi tên - Quan hệ - Thuộc tính S(R) : (đọc là rho) Đổi tên quan hệ R thành S Xét quan hệ R(B, C, D) X, C, D (R) : Đổi tên thuộc tính B thành X Đổi tên quan hệ R thành S và thuộc tính B thành X S(X,C,D)(R)
  • 33. liệu - Khoa CNTT 33 Ví dụ 7  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:  C2: HONV, TENNV (PHG=4 (NHANVIEN)) NV_P4  PHG=4 (NHANVIEN) KQ  HONV, TENNV (NV_P4) KQ(HO, TEN)  HONV, TENNV (NV_P4) KQ(HO, TEN) (HONV, TENNV (NV_P4))
  • 34. liệu - Khoa CNTT 34 Nội dung chi tiết  Giới thiệu  Đạ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 kết  Phép chia  Các phép toán khác
  • 35. liệu - Khoa CNTT 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  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 - Nếu R có u bộ và S có v bộ thì Q sẽ có u  v bộ - Nếu R có n thuộc tính và S có m thuộc tính thì Q sẽ có n + m thuộc tính (R+  S+   ) R  S
  • 36. liệu - Khoa CNTT 36 Phép tích Cartesian (tt)  Ví dụ A B  R  1 2 B C  S  10 10 D + +  20 -  10 - X C  S  10 10 D + +  20 -  10 - (X,C,D) (S) R  S A B   1 2  2  1  1  1  2  2 X C   10 10  10  10  20  10  20  10 D + + + + - - - -
  • 37. liệu - Khoa CNTT 37 Phép tích Cartesian (tt)  Ví dụ A B  R  1 2 B C  S  10 10 D + +  20 -  10 - unambiguous A R.B   1 2  2  1  1  1  2  2 S.B C   10 10  10  10  20  10  20  10 D + + + + - - - - R  S
  • 38. liệu - Khoa CNTT 38 Phép tích Cartesian (tt)  Thông thường theo sau phép tích Cartesian là phép chọn R  S A R.B   1 2  2  1  1  1  2  2 S.B C   10 10  10  10  20  10  20  10 D + + + + - - - - A=S.B (R  S) A R.B  1  2  2 S.B C  10  10  20 D + + -
  • 39. liệu - Khoa CNTT 39 Ví dụ 8  Với mỗi phòng ban, cho biết thông tin của người trưởng phòng - Quan hệ: PHONGBAN, NHANVIEN - Thuộc tính: TRPHG, MAPHG, TENNV, HONV, … TENPHG MAPHG TRPHG NG_NHANCHUC Nghien cuu 5 333445555 05/22/1988 Dieu hanh 4 987987987 01/01/1995 Quan ly 1 888665555 06/19/1981 TENNV HONV NGSINH DCHI PHAI LUONG PHG Tung Nguyen 12/08/1955 638 NVC Q5 Nam 40000 5 Hang Bui 07/19/1968 332 NTH Q1 Nu 25000 4 Nhu Le 06/20/1951 291 HVH QPN Nu 43000 4 Hung Nguyen 09/15/1962 Ba Ria VT Nam 38000 5 333445555 987987987 987654321 999887777 MANV TENPHG MAPHG TRPHG NG_NHANCHUC Nghien cuu 5 333445555 05/22/1988 Dieu hanh 4 987987987 01/01/1995 Quan ly 1 888665555 06/19/1981 TENNV HONV Tung Nguyen Hung Nguyen 333445555 987987987 888665555 MANV Vinh Pham … … … …
  • 40. liệu - Khoa CNTT 40 Ví dụ 8 (tt)  B1: Tích Cartesian PHONGBAN và NHANVIEN  B2: Chọn ra những bộ thỏa TRPHG=MANV PB_NV  (NHANVIEN  PHONGBAN) KQ  TRPHG=MANV(PB_NV)
  • 41. liệu - Khoa CNTT 41 Ví dụ 9  Cho biết lương cao nhất trong công ty - Quan hệ: NHANVIEN - Thuộc tính: LUONG TENNV HONV LUONG … Tung Nguyen 40000 … Hang Bui 25000 … Nhu Le 43000 … Hung Nguyen 38000 … … … … … … LUONG … 40000 … 25000 … 43000 … 38000 … … … … … …
  • 42. liệu - Khoa CNTT 42 Ví dụ 9 (tt)  B1: Chọn ra những lương không phải là lớn nhất  B2: Lấy tập hợp lương trừ đi lương trong R3 R1  (LUONG (NHANVIEN)) R2  NHAN_VIEN.LUONG < R1.LUONG(NHANVIEN  R1) R3  NHAN_VIEN.LUONG (R2) KQ  LUONG (NHANVIEN)  R3
  • 43. liệu - Khoa CNTT 43 Ví dụ 10  Cho biết các phòng ban có cùng địa điểm với phòng số 5 - Quan hệ: DIADIEM_PHG - Thuộc tính: DIADIEM, MAPHG - Điều kiện: MAPHG=5 Phòng 5 có tập hợp những địa điểm nào? Phòng nào có địa điểm nằm trong trong tập hợp đó? DIADIEM MAPHG 1 4 5 5 TP HCM VUNGTAU NHATRANG HA NOI 5 TP HCM DIADIEM MAPHG 1 4 5 5 TP HCM VUNGTAU NHATRANG HA NOI 5 TP HCM
  • 44. liệu - Khoa CNTT 44 Ví dụ 10 (tt)  B1: Tìm các địa điểm của phòng 5  B2: Lấy ra các phòng có cùng địa điểm với DD_P5 DD_P5(DD)  DIADIEM (MAPHG=5 (DIADIEM_PHG)) R2  DIADIEM=DD (R1  DD_P5) KQ  MAPHG (R2) R1  MAPHG5 (DIADIEM_PHG)
  • 45. liệu - Khoa CNTT 45 Nội dung chi tiết  Giới thiệu  Đạ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 kết - Kết tự nhiên (Natural join) - Kết có điều kiện tổng quát (Theta join) - Kết bằng (Equi join)  Phép chia  Các phép toán khác
  • 46. liệu - Khoa CNTT 46 Phép kết(nối)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 - 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 , , , , , 
  • 47. liệu - Khoa CNTT 47 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+  Q+    Kết quả của phép kết bằng bỏ bớt đi 1 cột giống nhau
  • 48. liệu - Khoa CNTT 48 Phép kết (tt)  Ví dụ phép kết theta D E 3 S 6 1 2 A B 1 R 4 2 5 C 3 6 7 8 9 R B<D S 1 2 3 3 1 1 2 3 6 2 4 5 6 6 2 A B C D E R C S = C(R  S)
  • 49. liệu - Khoa CNTT 49 Phép kết (tt)  Ví dụ phép kết bằng D E 3 S 6 1 2 A B 1 R 4 2 5 C 3 6 7 8 9 R C=D S A B 1 2 C 3 4 5 6 D 3 E 1 6 2 C D 3 S 6 1 2 A B 1 R 4 2 5 C 3 6 7 8 9 R C=S.C S A B 1 2 C 3 4 5 6 S.C 3 D 1 6 2 S.C D 3 S 6 1 2 (S.C,D) S
  • 50. liệu - Khoa CNTT 50 Phép kết (tt)  Ví dụ phép kết tự nhiên R S C D 3 S 6 1 2 A B 1 R 4 2 5 C 3 6 7 8 9 A B 1 2 C 3 4 5 6 S.C 3 D 1 6 2 A B 1 2 C 3 4 5 6 D 1 2
  • 51. liệu - Khoa CNTT 51 Ví dụ 11  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 NHAN_VIEN(HONV, TENNV, MANV, …, LUONG, PHG) R1(LG)  LUONG (TENNV=‘Tung’ (NHANVIEN)) KQ  NHAN_VIEN LUONG>LG R1 KQ(HONV, TENNV, MANV, …, LUONG, LG)
  • 52. liệu - Khoa CNTT 52 Ví dụ 12  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 PHONGBAN(TENPHG, MAPHG, TRPHG, NG_NHANCHUC) NHANVIEN(HONV, TENNV, MANV, …, PHG) KQ  NHANVIEN PHG=MAPHG PHONGBAN KQ(HONV, TENNV, MANV, …, PHG, TENPHG, MAPHG, …)
  • 53. liệu - Khoa CNTT 53 Ví dụ 13  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 PHONGBAN(TENPHG, MAPHG, TRPHG, NGAY_NHANCHUC) DDIEM_PHG(MAPHG, DIADIEM) KQ  PHONGBAN DDIEMPHG KQ(TENPHG, MAPHG, TRPHG, NGAY_NHANCHUC, DIADIEM)
  • 54. liệu - Khoa CNTT 54 Ví dụ 8  Với mỗi phòng ban hãy cho biết thông tin của người trưởng phòng - Quan hệ: PHONGBAN, NHANVIEN
  • 55. liệu - Khoa CNTT 55 Ví dụ 10  Cho biết phòng ban có cùng địa điểm với phòng 5 - Quan hệ: DDIEM_PHG
  • 56. liệu - Khoa CNTT 56 Nội dung chi tiết  Giới thiệu  Đạ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 kết  Phép chia  Các phép toán khác
  • 57. liệu - Khoa CNTT 57 Phép chia  Được dùng để lấy ra một số bộ trong quan hệ R sao cho thỏa với tất cả các bộ trong quan hệ S  Ký hiệu R  S hoặc R / S - R(Z) và S(X)  Z là tập thuộc tính của R, X là tập thuộc tính của S  X  Z  Kết quả của phép chia là một quan hệ T(Y) - Với Y=Z-X - Có t là một bộ của T nếu với mọi bộ tSS, tồn tại bộ tRR thỏa 2 điều kiện  tR(Y) = t  tR(X) = tS(X) X Y T(Y) S(X) R(Z)
  • 58. liệu - Khoa CNTT 58 Phép chia (tt)  Ví dụ: : alpha,  : beta, : gamma A B   a a  a  a  a  a  a  a C D   a b  a  a  b  a  b  b E 1 3 1 1 1 1 1 1 R D E a S b 1 1 R  S A B C  a   a 
  • 59. liệu - Khoa CNTT 59 Ví dụ 14  Cho biết mã nhân viên tham gia tất cả các đề án - Quan hệ: PHANCONG, DEAN - Thuộc tính kết quả: MANV, Thuộc tính quan hệ: MADA
  • 60. liệu - Khoa CNTT 60 Ví dụ 15  Cho biết mã nhân viên tham gia tất cả các đề án do phòng số 4 phụ trách - Quan hệ: PHANCONG, DEAN - Thuộc tính: MANV - Điều kiện: PHG=4
  • 61. liệu - Khoa CNTT 61 Phép chia (tt)  Biểu diễn phép chia thông qua tập đầy đủ các phép toán ĐSQH Q1  Y (R) Q2  Q1  S Q3  Y(Q2  R) T  Q1  Q3
  • 62. liệu - Khoa CNTT 62 Nội dung chi tiết  Giới thiệu  Đạ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 kết  Phép chia  Các phép toán khác - Hàm kết hợp (Aggregation function) - Phép gom nhóm (Grouping) - Phép kết ngoài (Outer join)
  • 63. liệu - Khoa CNTT 63 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 - MIN - MAX - SUM - COUNT
  • 64. liệu - Khoa CNTT 64 Hàm kết hợp (tt)  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 COUNT(*) =4
  • 65. liệu - Khoa CNTT 65 Phép gom nhóm  Đượ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 -  : tau , 𝜁 : zeta - 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F1(A1), F2(A2), …, Fn(An)(E)
  • 66. liệu - Khoa CNTT 66 Phép gom nhóm (tt)  Ví dụ  SUM(C)(R) SUM_C 27 A B  R  2 4   2 2 C 7 7 3 10 A  SUM(C)(R) SUM_C 14 3 10 A   
  • 67. liệu - Khoa CNTT 67 Ví dụ 16  Tính số lượng nhân viên và lương trung bình của cả công ty count(*), avg(luong)(NHANVIEN)
  • 68. liệu - Khoa CNTT 68 Ví dụ 17  Tính số lượng nhân viên và lương trung bình của từng phòng ban MAPHGcount(*), avg(LUONG)(NHANVIEN)
  • 69. liệu - Khoa CNTT 69 Phép kết ngoài  Mở rộng phép kết để tránh mất mát thông tin - Thực hiện phép kết - Lấy thêm các bộ không thỏa điều kiện kết  Có 3 hình thức - Mở rộng bên trái - Mở rộng bên phải - Mở rộng 2 bên Bên trái hiện tất cả trị Bên phải hiện tất cả trị Bên trái, phải hiện tất cả trị
  • 70. liệu - Khoa CNTT 70
  • 71. liệu - Khoa CNTT 71
  • 72. liệu - Khoa CNTT 72 Ví dụ 18  Cho biết họ tên nhân viên và tên phòng ban mà họ phụ trách nếu có - Quan hệ: NHANVIEN, PHONGBAN - Thuộc tinh: TENNV, TENPH R1  NHANVIEN MANV=TRPHG PHONGBAN KQ  HONV,TENNV, TENPHG (R1) TENNV HONV TENPHG Tung Nguyen Nghien cuu Hang Bui null Nhu Le null Vinh Pham Quan ly
  • 73. dữ liệu - Khoa CNTT 73
  • 74. liệu - Khoa CNTT 74