Bài tập thực hành môn HQTCSDL - Đại số quan hệ

50 3K 59
Bài tập thực hành môn HQTCSDL - Đạ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

Tài liệu môn Hệ quản Trị CSDL

BMHTTT 1 NN NN CHƯƠNG CHƯƠNG Đại số quan hệ (Relational Algebra) (Relational Algebra) BMHTTT 2 NN NN N N ộ ộ i dung i dung  Đại số quan hệ  5 phép toán cơ bản  3 phép toán suy dẫn  Phép giao  Phép kết: kết θ, kết bằng, kết tự nhiên, nửa kết, kết ngoài  Phép chia 2 BMHTTT 3 NN NN Đại số quan hệ (Relational Algebra)  Đại số quan hệ là ngôn ngữ tập hợp (set language) bao gồm các toán tử (operator) thao tác trên 1 hay nhiều quan hệ để tạo ra 1 quan hệ khác mà không làm thay đổi các quan hệ ban đầu. ÎCác toán hạng và kết quả đều là quan hệ ÎKết quả của 1 phép toán có thể trở thành toán hạng cho 1 phép toán khác Æ tính bao đóng (closure) 3 BMHTTT 4 NN NN Đ Đ ạ ạ i s i s ố ố quan h quan h ệ ệ v v à à SQL SQL  Query thực chất là 1 biểu thức chứa các toán tử của đại số quan hệ. Kết quả của query cũng là 1 quan hệ. Mối liên hệ giữa SQL và đại số quan hệ?? SQL là 1 ngôn ngữ phi thủ tục ( không xác định các thủ tục được dùng để xử lý truy vấn), còn đại số quan hệ theo hướng thủ tục. 4 BMHTTT 5 NN NN 5 SQL query SQL query Relational algebra Expression Relational algebra Expression Query Execution Plain Query Execution Plain Executable Code Executable Code Parser Query Optimizer Query Optimizer Code generator BMHTTT 6 NN NN 5 ph 5 ph é é p to p to á á n cơ b n cơ b ả ả n n  Phép chọn (selection)  Phép chiếu (projection)  Phép tích Descartes (Cartesian product)  Phép hợp (union)  Phép hiệu (difference) 6 BMHTTT 7 NN NN Ph Ph é é p ch p ch ọ ọ n (selection) n (selection)  Các phép toán được thực hiện cho quan hệ r trên lược đồ quan hệ R và điều kiện F.  Điều kiện F là 1 biểu thức luận lý có giá trị true/false, nó 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 (∨) 7 BMHTTT 8 NN NN Ph Ph é é p ch p ch ọ ọ n n  Phép chọn trên r theo điều kiện F, ký hiệu là σ F (r), 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 σ F (r) = {t|t ∈r và F(t) = true}  Nếu quan hệ r có bậc là n và có k bộ thì σ F (r) có bao nhiêu bậc và bộ? Î Bậc là n và có tối đa là k bộ 8 BMHTTT 9 NN NN V V í í d d ụ ụ 9 BMHTTT 10 NN NN Select Operation Select Operation – – Example Example ■ Relation r A B C D α α β β α β β β 1 5 12 23 7 7 3 10  σ A=B ^ D > 5 (r) A B C D α β α β 1 23 7 10 [...]... σA=C(r x s) C α α α α β β β β rxs B 1 2 2 α 10 a β 10 a β 20 b NN BMHTTT 21 Ba phép toán suy dẫn Phép giao của 2 quan hệ r và s (suy dẫn) r ∩ s = {t | t ∈ r và t ∈ s} Điều kiện: các quan hệ r và s phải có tính khả hợp (union-compatible) 22NN BMHTTT 22 Phép kết θ θ-join Cho quan hệ r trên R, quan hệ s trên S Gọi T = R ∪ S, các thuộc tính của R khác với các thuộc tính của S, θ là 1 phép so sánh A ∈ R và B... x k2 bộ Nếu R và S có thuộc tính A trùng nhau, thì nên thay thành R.A và S.A để cho R ∩S = ∅ Trong phép kết bằng, nếu k=0 thì phép kết bằng trở thành phép tích Descartes 31NN BMHTTT 31 Phép kết tự nhiên (Natural join) Phép kết tự nhiên của 2 quan hệ r và s cho kết quả là 1 quan hệ q trên lược đồ quan hệ T (có tập thuộc tính là hợp của các tập thuộc tính của R và S) bao gồm các bộ t như sau: r s = {t|... σPCODE =311452(Product) NN 11 11 Phép chiếu (Projection operation) 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 của r trên tập thuộc tính X cho kết quả là 1 quan hệ ΠX(r) = {t | ∃ u∈ r sao cho t = u[X]} Nếu quan hệ r có bậc là n và có k bộ thì ΠX(r) có bao nhiêu bậc và bộ? Bậc là |X|... trên 2 thuộc tính A và B, cho kết quả là 1 quan hệ q trên lược đồ quan hệ T bao gồm các bộ t Q(T) = {t | ∃ tr ∈ r và ts ∈ s với t[R] = tr và t[S] = ts và t[A] θ t[B] } 23NN BMHTTT 23 Phép kết θ θ-join Phép kết của 2 quan hệ r và s r A θ B s = σ A θ B (r x s) Phép kết có tính giao hoán 24NN BMHTTT 24 V í dụ 25NN BMHTTT 25 V í dụ 26NN BMHTTT 26 V í dụ Cho các quan hệ sau: STUDENT(Id,Name,BirthDate) PROFESSOR(Id,Name,Qualification)... Descartes Cho quan hệ r trên lược đồ R(A1, A2, ,Am) và s trên lược đồ S(B1,B2,…,Bn) Phép tích Descartes của r và s là 1 quan hệ trên lược đồ T(A1, A2, , Am, B1, B2, ….,Bn) r x s = {(t1,t2, ,tm,tm+1,…Tm+n) |(t1, t2, , tm) ∈ r và (tm+1, …, tm+n) ∈ s } Nếu quan hệ r có bậc là m, và k bộ Và quan hệ s có bậc là n và l bộ thì r x s có bao nhiêu bậc và bộ? Bậc là m + n và có k x l bộ BMHTTT 15 15NN Cartesian-Product... b a a b b NN BMHTTT 16 Ví d ụ PRODUCT x STORE NN BMHTTT 17 17 Phép hợp (union), phép hiệu (intersection) Phép hợp của 2 quan hệ r và s r ∪ s = {t | t ∈ r hay t ∈ s} Phép hiệu của 2 quan hệ r và s r - s = {t | t ∈ r và t ∉ s} Điều kiện: các quan hệ r và s phải có tính khả hợp (union-compatible) 18NN BMHTTT 18 Union NN BMHTTT 19 19 Intersect NN BMHTTT 20 20 Biểu thức phức Tính σA=C(r x s) A D E 1 1 1... hợp đặc biệt của Phép kết θ Cho quan hệ r trên R, s trên S với Ai ∈ R và Bi ∈ S và dom(Ai) = dom(Bi), i = 1… k Gọi T = R ∪ S (k là số thuộc tính dùng để so sánh bằng ở 2 quan hệ) Phép kết bằng của r và s trên các thuộc tính A1, A2,…, Ak và B1, B2,… Bk cho kết quả là 1 quan hệ trên T bao gồm các bộ: Q(T) = {t | ∃ tr ∈ r và ts ∈ s với t[R] = tr và t[S] = ts và t[Ai] = t[Bi], i =1, , k } 30NN BMHTTT 30... tên các giáo sư dạy môn học mùa thu 2007 (semester =‘F2007’) ΠName(PROFESSOR Id=ProfId σSemester=‘F2007’(TEACHING)) 28NN BMHTTT 28 V í dụ Tìm tên môn và tên giáo sư của các môn học được dạy trong mùa thu 2007 ΠCrsName,Name((PROFESSOR σSemester=‘F2007’ (TEACHING)) CrsCode=CrsCodeCOURSE) Id=ProfId 29NN BMHTTT 29 Phép kết bằng (Equijoin) Là trường hợp đặc biệt của Phép kết θ Cho quan hệ r trên R, s trên... s = ΠT(σF(r x s)) với F là biểu thức R.A1 = S.A1, R.A2 = S.A2,…, R.Ak =S.Ak và R ∩ S ={A1,A2,…,Ak} (T là tập thuộc tính hợp của 2 tập thuộc tính nhưng thuộc tính trùng không được lặp lại lần thứ 2) Nếu R ∩ S =∅ thì phép kết tự nhiên sẽ là tích Descartes??? 34NN BMHTTT 34 Natural-Join Operation - Example Cho R = (A, B, C, D) S = (E, B, D) Lược đồ kết quả = (A, B, C, D, E) r s được xác định như sau:... lược đồ quan hệ T (có tập thuộc tính là hợp của các tập thuộc tính của R và S) bao gồm các bộ t như sau: r s = {t| ∃ tr ∈ r và ts ∈ s với t[R] = tr và t[S] = ts } R và S có thể có thuộc tính trùng nhau Quan hệ kết quả q không lặp lại các thuộc tính được kết với nhau BMHTTT 32 32NN Natural Join Operation – Example Relations r, s: s r A s C D B D E α β γ α δ I r B 1 2 4 1 2 α γ β γ β a a b a b 1 3 1 2 3

Ngày đăng: 28/03/2014, 20:43

Từ khóa liên quan

Mục lục

  • CHƯƠNG

  • Nội dung

  • Đại số quan hệ (Relational Algebra)

  • Đại số quan hệ và SQL

  • 5 phép toán cơ bản

  • Phép chọn (selection)

  • Phép chọn

  • Ví dụ

  • Select Operation – Example

  • Selection

  • Phép chiếu (Projection operation)

  • Project Operation – Example

  • Projection

  • Phép tích Descartes

  • Cartesian-Product Operation – Example

  • Ví dụ

  • Phép hợp (union), phép hiệu (intersection)

  • Union

  • Intersect

  • Biểu thức phức

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

Tài liệu liên quan