Đăng ký Đăng nhập

Tài liệu Chapter3

.PDF
71
528
101

Mô tả:

Chương 3: NGÔN NGỮ ĐỊNH NGHĨA VÀ THAO TÁC DL I. ĐẠI SỐ QUAN HỆ – Phép chọn (Selection) – Phép chiếu (Projection) – Tích Đề các (Cartesian product) – Phép kết nối (Join) – Phép chia (Division) – Phép hợp (Union) – Phép giao (Intersect) – Phép trừ (Difference) II. ĐẠI SỐ HỆ VÀ CÁC TÍNH CHẤT CỦA ĐẠI SỐ QUAN HỆ III. NGÔN NGỮ SQL – Ngôn ngữ định nghĩa dư liệu – Truy vấn dữ liệu – Các phép toán tập hợp (Set Operations) – Giá trị NULL và các hàm tổng hợp của SQL – Các hàm tổng hợp với việc nhóm dữ liệu – Truy vấn lồng (Nested Subqueries) – Khung nhìn (Views) – Các lệnh cập nhật dữ liệu IV. NGÔN NGỮ QBE I. ĐẠI SỐ QUAN HỆ 1.1. Phép chọn (Selection) Cho quan hệ r định nghĩa trên lược đồ quan hệ R(U), E là biểu thức chọn phát biểu trên U. Phép chọn trên quan hệ r theo điều kiện E, ký hiệu σE(r) cho ta một quan hệ mới với tập thuộc tính U và các bộ là các bộ của r thoả mãn điều kiện E. Ta viết: σE(r) = {t | t∈r và E(t)=đúng} Trong đó E(t) là giá trị của biểu thức E khi thay mọi thuộc tính Ai trong E của t bởi t[Ai]. I. ĐẠI SỐ QUAN HỆ 1.1. Phép chọn (tiếp) I. ĐẠI SỐ QUAN HỆ 1.1. Phép chọn (tiếp) Ví dụ 1: Cho quan hệ KHACHHANG như sau: a. Đưa ra danh sách khách hàng tên 'Lê Thanh Tâm' có địa chỉ tại 'Hà Nội'? ) σ(TenKH='Lê Thanh Tâm' ) ∧ (DiaChiKH='Hà Nội') (KHACHHANG) I. ĐẠI SỐ QUAN HỆ 1.1. Phép chọn (tiếp) Ví dụ 1: Cho quan hệ KHACHHANG như sau: b. Đưa ra danh sách khách hàng có địa chỉ tại 'Hà Nội' hoặc 'Nghệ An'? ) σ(DiaChiKH='Hà Nội') ∨ (DiaChiKH='Nghệ An') (KHACHHANG) I. ĐẠI SỐ QUAN HỆ 1.2. Phép chiếu (projection) Cho quan hệ r định nghĩa trên lược đồ quan hệ R(U) với U={A1, ..., An} và tập thuộc tính X⊆ U. Phép chiếu quan hệ r lên tập thuộc tính X, ký hiệu ΠX(r) cho ta một quan hệ mới với tập thuộc tính X và các bộ là hạn chế trên X của các bộ t∈ r. Ta viết ΠX(r) = {t[X] | t ∈ r }. I. ĐẠI SỐ QUAN HỆ 1.2. Phép chiếu (tiếp) Ví dụ 2: Cho quan hệ KHACHHANG như sau: a. Đưa ra mã, tên khách hàng ? ) Π{MaKH, TenKH}(KHACHHANG) Π{MaKH, TenKH}(KHACHHANG) I. ĐẠI SỐ QUAN HỆ 1.2. Phép chiếu (tiếp) Ví dụ 2: Cho quan hệ KHACHHANG như sau: b. Đưa ra địa chỉ khách hàng ? ) Π{DiaChiKH}(KHACHHANG) Π{DiaChiKH}(KHACHHANG) I. ĐẠI SỐ QUAN HỆ Ví dụ 3: Cho quan hệ KHACHHANG như sau: Đưa ra tên khách hàng có địa chỉ ở ‘Hà Nội’? ) Π{TenKH}(σDiachiKH=‘Hà Nội’(KHACHHANG)) σDiachiKH=‘Hà Nội’(KHACHHANG) Π{TenKH}(σDiachiKH=‘Hà Nội’(KHACHHANG)) I. ĐẠI SỐ QUAN HỆ 1.3. Tích Đề các (Cartesian product) Cho hai quan hệ r định nghĩa trên lược đồ quan hệ R(U) và s định nghĩa trên lược đồ quan hệ S(V) , với U= {A1,A2, ..., An} , V= {B1,B2, ..., Bm}. Tích Đề các của r và s, ký hiệu r×s cho ta một quan hệ mới với tập thuộc tính U ∪ V và các bộ có dạng: t= (a1,a2,..., an,b1, b2, ..., bm) trong đó (a1 , ..., an ) ∈ r và (b1,b2, ..., bm ) ∈ s. Ta viết: r × s={t=(a1,a2...,an ,b1,b2, ...,bm ) | (a1,a2, ..., an) ∈ r và (b1,b2, ..., bm)∈s}. I. ĐẠI SỐ QUAN HỆ 1.3. Tích Đề các (tiếp) Ví dụ 4: I. ĐẠI SỐ QUAN HỆ 1.4. Phép kết nối (Join) a, Phép kết nối θ Cho hai quan hệ r định nghĩa trên lược đồ quan hệ R(U) và s định nghĩa trên lược đồ quan hệ S(V) với U={A1, ..., An}, V ={B1, ..., Bm}. Ai và Bj là các thuộc tính tương ứng thuộc U và V sao cho Dom(Ai)=Dom(Bj). Gọi θ là một trong các phép toán {=, >, >=, <, <=, ≠ }. Phép kết nối quan hệ r với s theo biểu thức Ai θ Bj , ký hiệu r s cho ta một quan hệ mới với tập thuộc tính U ∪ V và các bộ được xác định bởi {(u,v) | u=(a1,a2, ..., an) ∈ r, v=(b1,b2, ..., bm)∈s và u[Ai] θ v[Bj]} = đúng}. Ta viết: r s = {(u,v) |u=(a1,a2, ..., an)∈r, v=(b1,b2, ...,bm)∈s và u[Ai] θ v[Bj]}=đúng}. I. ĐẠI SỐ QUAN HỆ 1.4. Phép kết nối (tiếp) a, Phép kết nối θ Ví dụ 5: I. ĐẠI SỐ QUAN HỆ 1.4. Phép kết nối (tiếp) b, Phép kết nối tự nhiên (Natural join) Cho hai quan hệ r định nghĩa trên lược đồ quan hệ R(U) và s định nghĩa trên lược đồ quan hệ S(V) với U∩V≠∅. Phép kết nối tự nhiên giữa quan hệ r với s, ký hiệu r*s cho ta một quan hệ mới với tập thuộc tính U ∪ V và các bộ được xác định bởi {t | t[U] ∈r và t[V] ∈s}. Ta viết: r*s = {t | t[U] ∈r và t[V] ∈s }. I. ĐẠI SỐ QUAN HỆ 1.4. Phép kết nối (tiếp) b, Phép kết nối tự nhiên Ví dụ 6: I. ĐẠI SỐ QUAN HỆ 1.4. Phép kết nối (tiếp) Ví dụ 7: SINHVIEN SINHVIEN * KHOA KHOA I. ĐẠI SỐ QUAN HỆ Ví dụ 8a: SINHVIEN KHOA Tính giá trị của biểu thức ΠHoten, Tenkhoa(σTenkhoa=‘Lý’(SINHVIEN * KHOA)) ? SINHVIEN * KHOA σTenkhoa=‘Lý’( SINHVIEN * KHOA) ΠHoten, Tenkhoa( σTenkhoa=‘Lý’( SINHVIEN * KHOA)) I. ĐẠI SỐ QUAN HỆ Ví dụ 8b: Cho 2 quan hệ: SINHVIEN (MaSV, Hoten, QueQuan, Makhoa) KHOA(Makhoa, Tenkhoa) Hãy viết biểu thức đại số quan hệ để đưa ra họ tên, tên khoa của sinh viên khoa ‘Lý’? Giải ΠHoten, Tenkhoa(σTenkhoa=‘Lý’(SINHVIEN * KHOA)) I. ĐẠI SỐ QUAN HỆ Bài tập: Cho cơ sở dữ liệu: HOADON(SoHD, NgayHD, MaKH) K_HANG(MaKH, TenKH, DiaChiKH, DTKH) M_HANG(MaMH, TenMH, DVT, DonGia) HD_MH(SoHD, MaMH, SoLuong, ThanhTien) Hãy trả lời các câu hỏi sau bằng biểu thức đại số quan hệ: a. Đưa ra mã, tên các mặt hàng có giá trên 100$? b. Cho biết tên những khách hàng đã mua hàng ngày 20/03/2009? c. Đưa ra danh sách các mặt hàng đã bán trong tháng 4 năm 2009? d. Đưa ra tên những mặt hàng bán trong quý 1 năm 2009? I. ĐẠI SỐ QUAN HỆ 1.5. Phép chia Cho hai quan hệ r định nghĩa trên lược đồ quan hệ R(U) và s định nghĩa trên lược đồ quan hệ S(V) với V⊂U và s ≠ φ. Đặt X=U \ V. Thương của phép chia quan hệ r cho quan hệ s, ký hiệu r ÷ s cho ta quan hệ mới với tập thuộc tính là X và các bộ được xác định bởi: {u [X] | (u ∈ r và ∀ v ∈ s thì (u[X] ,v) ∈ r } Ta viết: r ÷ s = { u [X] | (u ∈r và ∀ v ∈ s thì (u[X] , v ) ∈ r }.
- Xem thêm -

Tài liệu liên quan