Chương 7: Phép tính quan hệ
Số trang: 33
Loại file: ppt
Dung lượng: 477.00 KB
Lượt xem: 16
Lượt tải: 0
Xem trước 4 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Đại số quan hệ được dùng để giải thích các truy vấn SQLđược đánh giá như thế nào.DBMS thường dùng đại số quan hệ như ngôn ngữ trunggian bậc cao dùng để dịch query trước khi tối ưu hóa thựcthi.Xét về mặt khái niệm, thì SQL lại dựa vào 1 ngôn ngữtruy vấn chính quy hoàn toàn khác (formal query language).Relational calculus (phép tính quan hệ).
Nội dung trích xuất từ tài liệu:
Chương 7: Phép tính quan hệChương7 PH ÉP N H UA N Ệ TÍ Q H 1N ộidung Phép tính quan hệ • Phép tính quan hệ bộ (TRC) • Phép tính quan hệ miền (DRC) Mối quan hệ giữa đại số quan hệ và phép tính quan hệ 2Mở đầu Đại số quan hệ được dùng để giải thích các truy vấn SQL được đánh giá như thế nào DBMS thường dùng đại số quan hệ như ngôn ngữ trung gian bậc cao dùng để dịch query trước khi tối ưu hóa thực thi Xét về mặt khái niệm, thì SQL lại dựa vào 1 ngôn ngữ truy vấn chính quy hoàn toàn khác (formal query language) Relational calculus (phép tính quan hệ) 3So sánh đại số quan hệ và phéptính quan hệ Đại số quan hệ (relational algebra) có tính thủ tục, gần với ngôn ngữ lập trình Phép tính quan hệ (relational calculus) không có tính thủ tục và gần với ngôn ngữ tự nhiên hơn Ví dụ: xét query sau “ liệt kê các nhà cung cấp chuyên cung cấp phụ tùng số 2” 4So sánh đại số quan hệ và phéptính quan hệ Nếu theo đại số quan hệ thì trinh tự thực hiên như sau: ̀ ̣ 1) Tạo mối kết nối tự nhiên của 2 quan hệ SUPPLIER và SHIPMENT trên thuộc tính S#; 2) Dung phep chon thu hẹp kết quả của kết nối này, ̀ ́ ̣ chỉ còn lai các bộ liên quan đến phụ tùng P2; ̣ 3) Dùng phép chiếu (project) để kết quả chỉ còn lại thuộc tính S#. 5So sánh đại số quan hệ và phéptính quan hệ Nếu theo phép tính quan hệ thì: • Tìm mã nhà cung cấp S# sao cho tồn tại 1 vận chuyển hàng SP nào đó có cùng mã S# và có mã phụ tùng P# là P2. Phép tính quan hệ thì mô tả, đại số quan hệ đưa ra qui tắc, cách dùng. 6Phép tính quan hệ Là 1 phân nhánh của logic vị từ (predicate logic) Được dùng trong CSDL dưới 2 dạng: Phép tính quan hệ bộ (Tuple relational calculus –TRC) Phép tính quan hệ miền (Domain relational calculus – DRC) 7Phép tính quan hệ bộ - TRC Các query trong TRC đều có dạng: Target {T| Condition} Target chứa biến bộ (Tuple variable) T Ví dụ: tìm tất cả thông tin các môn học được dạy trong mùa thu 2007 { T | TEACHING(T) AND T.Semester = ‘F2007’} SELECT * FROM TEACHING WHERE T.Semester = ‘F2007’ SQL là 1 biến thể về mặt cú pháp của TRC Teaching(T)tươngưngvơimênhđêFROM ́ ́ ̣ ̀ T.Semester=‘F2007’tươngưngvơiWHERE ́ ́ 8Cú pháp của conditionCó thể là 1 trong các dạng sau: P(T): P là tên quan hệ và T là biến bộ. P(T) được dùng để kiểm tra bộ T có thuộc về P hay không T(A) oper S(B) với oper là toán tử so sánh. T và S là biến bộ, A và B là các thuộc tính T.A oper const. Tương tự như trên nhưng T được so sánh với hằng số Các điều kiện trên được gọi là điều kiện nguyên tố ( atomic condition) 9Điều kiện phức(Complex condition) Các điều kiện phức được xây dựng một cách đệ quy như sau: • C là 1 điều kiện của query nếu nó là 1 điều kiện nguyên tố • Nếu C1 và C2 là điều kiện của query thì C1 AND C2, C1 OR C2 và NOT C1 cũng là điều kiện của query • Nếu C là điều kiện của query, R là tên quan hệ và T là biến bộ thì ∀T ∈ R (C) và ∃ T ∈ R (C) cũng là điều kiện query 10Lượng từ Lượng từ tồn tại (existential quantifier):∃ T ∈ R (C) tồn tại 1 bộ t∈r sao cho C trở nên đúng sau khi t được thay thế bởi T Lượng từ phổ quát (universal quantifier):∀T ∈ R (C) với mọi bộ t ∈ r, C trở nên đúng nếu t được thay thế bởi biến T. 11Biến (variable) Nếu biến bộ đứng sau 1 lượng từ ∀, ∃ được gọi là biến buộc (bound variable). Ngược lại là biến tự do (free variable) X là biến tự do trong phát biểu sau “X is in CS305” (hay có thể biểu diễn thành C(X) ) Phát biểu trên không đúng cũng không sai cho đến khi gán 1 giá trị cho X 12Biến (variable) X là biến buộc (được định lượng) trong phát biểu sau“there exists a student X such that X is in CS305” (biểu diễn thành ∃ X∈ S (C(X)), với S là tập hợp tất cả sinh viên) Phát biểu trên có thể được gán giá trị TRUE/FALSE tại bất kỳ 1 thời điểm nào đó của database ...
Nội dung trích xuất từ tài liệu:
Chương 7: Phép tính quan hệChương7 PH ÉP N H UA N Ệ TÍ Q H 1N ộidung Phép tính quan hệ • Phép tính quan hệ bộ (TRC) • Phép tính quan hệ miền (DRC) Mối quan hệ giữa đại số quan hệ và phép tính quan hệ 2Mở đầu Đại số quan hệ được dùng để giải thích các truy vấn SQL được đánh giá như thế nào DBMS thường dùng đại số quan hệ như ngôn ngữ trung gian bậc cao dùng để dịch query trước khi tối ưu hóa thực thi Xét về mặt khái niệm, thì SQL lại dựa vào 1 ngôn ngữ truy vấn chính quy hoàn toàn khác (formal query language) Relational calculus (phép tính quan hệ) 3So sánh đại số quan hệ và phéptính quan hệ Đại số quan hệ (relational algebra) có tính thủ tục, gần với ngôn ngữ lập trình Phép tính quan hệ (relational calculus) không có tính thủ tục và gần với ngôn ngữ tự nhiên hơn Ví dụ: xét query sau “ liệt kê các nhà cung cấp chuyên cung cấp phụ tùng số 2” 4So sánh đại số quan hệ và phéptính quan hệ Nếu theo đại số quan hệ thì trinh tự thực hiên như sau: ̀ ̣ 1) Tạo mối kết nối tự nhiên của 2 quan hệ SUPPLIER và SHIPMENT trên thuộc tính S#; 2) Dung phep chon thu hẹp kết quả của kết nối này, ̀ ́ ̣ chỉ còn lai các bộ liên quan đến phụ tùng P2; ̣ 3) Dùng phép chiếu (project) để kết quả chỉ còn lại thuộc tính S#. 5So sánh đại số quan hệ và phéptính quan hệ Nếu theo phép tính quan hệ thì: • Tìm mã nhà cung cấp S# sao cho tồn tại 1 vận chuyển hàng SP nào đó có cùng mã S# và có mã phụ tùng P# là P2. Phép tính quan hệ thì mô tả, đại số quan hệ đưa ra qui tắc, cách dùng. 6Phép tính quan hệ Là 1 phân nhánh của logic vị từ (predicate logic) Được dùng trong CSDL dưới 2 dạng: Phép tính quan hệ bộ (Tuple relational calculus –TRC) Phép tính quan hệ miền (Domain relational calculus – DRC) 7Phép tính quan hệ bộ - TRC Các query trong TRC đều có dạng: Target {T| Condition} Target chứa biến bộ (Tuple variable) T Ví dụ: tìm tất cả thông tin các môn học được dạy trong mùa thu 2007 { T | TEACHING(T) AND T.Semester = ‘F2007’} SELECT * FROM TEACHING WHERE T.Semester = ‘F2007’ SQL là 1 biến thể về mặt cú pháp của TRC Teaching(T)tươngưngvơimênhđêFROM ́ ́ ̣ ̀ T.Semester=‘F2007’tươngưngvơiWHERE ́ ́ 8Cú pháp của conditionCó thể là 1 trong các dạng sau: P(T): P là tên quan hệ và T là biến bộ. P(T) được dùng để kiểm tra bộ T có thuộc về P hay không T(A) oper S(B) với oper là toán tử so sánh. T và S là biến bộ, A và B là các thuộc tính T.A oper const. Tương tự như trên nhưng T được so sánh với hằng số Các điều kiện trên được gọi là điều kiện nguyên tố ( atomic condition) 9Điều kiện phức(Complex condition) Các điều kiện phức được xây dựng một cách đệ quy như sau: • C là 1 điều kiện của query nếu nó là 1 điều kiện nguyên tố • Nếu C1 và C2 là điều kiện của query thì C1 AND C2, C1 OR C2 và NOT C1 cũng là điều kiện của query • Nếu C là điều kiện của query, R là tên quan hệ và T là biến bộ thì ∀T ∈ R (C) và ∃ T ∈ R (C) cũng là điều kiện query 10Lượng từ Lượng từ tồn tại (existential quantifier):∃ T ∈ R (C) tồn tại 1 bộ t∈r sao cho C trở nên đúng sau khi t được thay thế bởi T Lượng từ phổ quát (universal quantifier):∀T ∈ R (C) với mọi bộ t ∈ r, C trở nên đúng nếu t được thay thế bởi biến T. 11Biến (variable) Nếu biến bộ đứng sau 1 lượng từ ∀, ∃ được gọi là biến buộc (bound variable). Ngược lại là biến tự do (free variable) X là biến tự do trong phát biểu sau “X is in CS305” (hay có thể biểu diễn thành C(X) ) Phát biểu trên không đúng cũng không sai cho đến khi gán 1 giá trị cho X 12Biến (variable) X là biến buộc (được định lượng) trong phát biểu sau“there exists a student X such that X is in CS305” (biểu diễn thành ∃ X∈ S (C(X)), với S là tập hợp tất cả sinh viên) Phát biểu trên có thể được gán giá trị TRUE/FALSE tại bất kỳ 1 thời điểm nào đó của database ...
Tìm kiếm theo từ khóa liên quan:
Phép tính quan hệ Phép tính quan hệ bộ TRC Phép tính quan hệ miền DRC đại số quan hệ truy vấn SQLGợi ý tài liệu liên quan:
-
Giáo trình Toán rời rạc (Nghề: Công nghệ thông tin - Cao đẳng) - Trường Cao đẳng Cộng đồng Đồng Tháp
107 trang 137 0 0 -
Giáo trình Nhập môn cơ sở dữ liệu: Phần 2 - Trần Thành Trai
145 trang 52 0 0 -
0 trang 51 0 0
-
Giáo trình Toán rời rạc: Phần 2 - Lâm Thị Ngọc Châu
49 trang 31 0 0 -
Đề thi kết thúc môn học học kì 2 môn Cơ sở dữ liệu năm 2020-2021 có đáp án - Trường ĐH Đồng Tháp
3 trang 30 0 0 -
Bài giảng Nhập môn cơ sở dữ liệu
188 trang 29 0 0 -
Giáo trình nhập môn Cơ sở dữ liệu - NXB Lao động Xã hội: Phần 1
97 trang 26 0 0 -
Đề cương ôn tập môn Cơ sở dữ liệu
3 trang 25 0 0 -
Bài giảng Cơ sở dữ liệu địa lý: Chương 3 - ThS. Nguyễn Duy Liêm
38 trang 24 0 0 -
Chương 6: Phép tính quan hệ - CSDL ĐH KHTN Tp.HCM
42 trang 24 0 0