intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng CSDL: Chương 4 - Ngôn ngữ thao tác dữ liệu

Chia sẻ: Minh Minh | Ngày: | Loại File: PDF | Số trang:22

273
lượt xem
18
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng CSDL: Chương 4 - Ngôn ngữ thao tác dữ liệu giới thiệu các phép toán (operation): phép chọn (selection); phép chiếu (projection); phép hợp (union); phép hiệu (set difference); phép tích Descartes (Cartesian product) và ba phép toán suy ngẫm: phép kết (Join); phép giao (Intersection) và phép chia (Division). Mời bạn đọc tham khảo.

Chủ đề:
Lưu

Nội dung Text: Bài giảng CSDL: Chương 4 - Ngôn ngữ thao tác dữ liệu

  1. BÀI GIẢNG CỞ SỞ DỮ LiỆU
  2. Các phép toán (operation)  5 phép toán cơ bản  Phép chọn (selection)  Phép chiếu (projection)  Phép hợp (union)  Phép trừ (set difference)  Phép tích Descartes (Cartesian product)  3 phép toán suy dẫn*  Phép kết (Join)  Phép giao (Intersection)  Phép chia (Division) (*Có thể được biểu diễn dưới dạng các phép toán cơ bản)
  3. Ký hiệu một thể hiện của lược đồ quan hệ R(A1, A2,  Quan hệ r là …, Am)  Điều kiện F là 1 biểu thức luận lý có giá trị true/false. F bao gồm:  Các toán hạng là hằng hoặc tên thuộc tính  Các phép toán so sánh =, , ,   Các phép toán luận lý not (), and (), or ()
  4. Phép chọn (selection)  Phép chọn trên quan hệ r(R) theo điều kiện F, ký hiệu là r(F) hay r:F , cho kết quả là 1 quan hệ bao gồm các bộ của r thỏa mãn điều kiện F r(F) = r:F = { t |t r và F(t) = true } * Phép chọn và phép chiếu là phép toán một toán hạng 4
  5. Phép chọn (selection) – ví dụ 1 Relation r A B C D A B C D r(A=B)   1 7   12 3   1 7   23 10   5 7   12 3 r(A=B ^ D>5) A B C D   23 10   1 7   23 10
  6. Phép chiếu (Projection)  Cho quan hệ r trên R(A1, A2,..,Am) và tập con các thuộc tính X={Aj1, Aj2, …, Ajn} với j1, j2,.., jn là các số nguyên phân biệt nằm trong khoảng từ 1 đến m  Phép chiếu r trên tập thuộc tính X cho kết quả là 1 quan hệ r[X] = r.X = {t |  u r sao cho t = u[X]}  Phép chiếu loại bỏ những bộ trùng nhau 6
  7. Phép chiếu (Projection) – ví dụ 1  Relation r r[A,C] A B C A C A C  10 1  1  1  20 1  1  1  30 1  1  2  40 2  2
  8. hợp quan hệ r và Phéphợp của 2(union) s  Phép r + s = r  s = { t | t  r  t  s} trong đó: r và s là hai quan hệ khả hợp r+s
  9. hiệu quan Difference) Phéphiệu của 2(Set hệ r và s  Phép r-s={t|tr  ts} trong đó: r và s là hai quan hệ khả hợp r-s
  10. Phép giaoquan hệ r và s  Phép giao của 2 (Intersection) r * s = r  s = {t | t  r  t  s} trong đó: r và s là hai quan hệ khả hợp r*s Hai quan hệ r và s là khả hợp ( union-compatible) khi : •Có cùng số thuộc tính •Các thuộc tính tương ứng có cùng miền giá trị
  11. Bài tập  Cho 2 quan hệ định nghĩa trên 2 lược đồ Quan hệ : Customer( Cuscode, cusName, cusPhone, City) Supplier ( SupCode, SupName, SupPhone, City)  Hiển thị danh sách các thành phố có khách hàng và đồng thời có nhà cung cấp?  Hiển thị danh sách các thành phố có khách hàng và không có nhà cung cấp?
  12. Phép kết (join)  thay thế phép (r x s) (F) với F là biểu thức điều kiện có dạng r.A  s.B  Bao gồm :  join)  Theta join (-join  Equijoin  Natural join  Outer join
  13. Phép kết  - Theta join  Cho r và s là hai quan hệ tương ứng trên các lược đồ R(A1, A2,..,Am) và S(B1,B2,…,Bn)  Gọi Q(A1, A2,.., Am, B1, B2, ….,Bn)   là 1 phép so sánh  Ai  R và Bj  S là 2 thuộc tính có thể so sánh với nhau bởi phép   Phép kết  của r và s trên 2 thuộc tính Ai và Bj ký hiệu , cho kết quả là 1 quan hệ q trên lược đồ quan hệ Q, bao gồm các bộ t q(Q) = {t |  tr  r và ts  s với t[R] = tr r Ai  Bj s và t[S] = ts và t[Ai]  t[Bj] } 13
  14. Phép kết  - Theta join  Ví dụ : Hiển thị ứng với mã mỗi môn học và các môn học tiếp sau nó ? MONHOC ( MaMon, TenMon, SoTC, Hocky) MaMon TenMon SoTC Hocky A Aaaa 3 1 B Bbbb 4 1 C Cccc 3 2 D Dddd 2 3 Chú ý : Sử dụng phép gán để tạo ra một biến quan hệ tạm: 14 s  r [MaMon, Hocky] , với r  MONHOC
  15. Phép kết  - Theta join MaMon Hocky r s MaMon Hocky r.Hocky < s.Hocky A 1 A 1 B 1 B 1 C 2 C 2 D 3 D 3 MaMon MaMonsau A C A D B C B D C D
  16. Phép kết bằng và kết tự nhiên  Phép kết Theta với  là phép so sánh bằng , thì được gọi là phép kết bằng _ Equijoin  Phép kết Theta với  là phép so sánh bằng được thực hiện trên các thuộc tính chung (cùng tên) của R và S , thì được gọi là phép kết tự nhiên – Natural join. Ký hiệu  Quan hệ kết quả q không lặp lại các thuộc tính chung của R và S r s VD: Hiển thị danh sách các khách hàng và nhà cung cấp ở cùng một thành phố Customer( Cuscode, cusName, cusPhone, City) Supplier ( SupCode, SupName, SupPhone, City) 16
  17. Phân biệt các phép join Phép so sánh Áp dụng trên Tập kết quả Theta join Tất cả Trên 2 thuộc tính cùng kiểu dữ liệu Equijoin phép bằng Trên 2 thuộc tính cùng kiểu dữ liệu Natural join phép bằng Trên 2 thuộc Không lặp lại tính chung thuộc tính chung
  18. Phép kết ngoài - Outer join  Bao gồm : Left/Right Outer Join, Full Outer Join  Phép kết Left Outer Join giữa r và s, cho phép các bộ của r không kết được với các bộ của s cũng được xuất hiện trong quan hệ kết quả  Những giá trị tương ứng với các bộ trong quan hệ bị thiếu sẽ được gán trị Null  Ưu điểm : giữ được thông tin mà lẽ ra bị mất trong phép kết  Ký hiệu : r s 18
  19. Phép kết ngoài - Outer join r s MASV MAMH DIEM MAMH TENMH 99001 CSDL 5.0 CSDL COSO 99002 FOX 2.0 DULIEU 99003 MANG 8.0 FOX FOXPRO MASV MAMH DIEM MAMH TENMH 99001 CSDL 5.0 CSDL COSO DULIEU 99002 FOX 2.0 FOX FOXPRO 99003 MANG 8.0
  20. Phép chia - Division  Cho quan hệ r định nghĩa trên R với tập thuộc tính A  Cho quan hệ s định nghĩa trên S với tập thuộc tính B , với BA  Gọi C = A - B , là tập thuộc tính chỉ có trong tập thuộc tính A của R  Phép chia r  s cho kết quả là một quan hệ với tập thuộc tính C và bao gồm các bộ sao cho đối với mọi bộ của s , thì tồn tại bộ thuộc r
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2