CHƢƠNG 4 Các ngôn ngữ thao tác trên quan hệ Tiến sĩ Lê Thị Tú Kiên Mục tiêu Biểu diễn một câu hỏi (truy vấn) trên CSDL quan hệ dưới dạng Biểu thức ngôn ngữ đại số quan hệ Biểu thức ngôn ngữ tân[.]
CHƢƠNG Các ngôn ngữ thao tác quan hệ Tiến sĩ: Lê Thị Tú Kiên Mục tiêu Biểu diễn câu hỏi (truy vấn) CSDL quan hệ dạng Biểu thức ngôn ngữ đại số quan hệ Biểu thức ngôn ngữ tân từ biến biến miền Câu lệnh truy vấn ngôn ngữ SQL Nhận biết tương đương hai ngơn ngữ hình thức đại số quan hệ ngơn ngữ tân từ Hai ngơn ngữ hình thức sở ngôn ngữ SQL Dept of IS - FIT - HNUE Ngôn ngữ đại số quan hệ Dept of IS - FIT - HNUE Giới thiệu Là hai ngơn ngữ hình thức mơ hình liệu quan hệ Là ngơn ngữ có tính thủ tục Mỗi câu hỏi biểu diễn thơng qua việc áp dụng có thứ tự tập phép toán Các phép toán Tập hợp: phép hợp, phép giao, phép hiệu phép tích đề Quan hệ: phép toán quan hệ phép chọn, phép chiếu, Dept of IS - FIT - HNUE phép kết nối, phép chia Hai quan hệ khả hợp Hai quan hệ khả hợp chúng xác định tập thuộc tính r2 r1 STT Ho Ten GioiTinh STT Ho Ten GioiTinh Trần A Nam Trần D Nữ Trần B Nam Trần E Nữ Trần C Nam Dept of IS - FIT - HNUE Phép hợp r1 r2 r1 r2 = { t | t r1 t r2} STT Ho Ten GioiTinh Trần A Nam Trần B Trần C STT Ho Ten r1 r2 STT Ho Ten GioiTinh Nam Trần A Nam Nam Trần B Nam Trần C Nam Trần D Nữ E Nữ GioiTinh Trần D Nữ Trần E Trần Nữ Dept of IS - FIT - HNUE Phép giao r1 r1 r2 = { t | t r1 t r2} Ho Ten GioiTinh Trần E Trần Trần Ho Ten GioiTinh Nữ Trần B Nam B Nam Trần E Nữ C Nam Trần C Nữ r1 r2 r2 Ho Ten GioiTinh Trần B Nam Trần Dept - HNUE E of IS - FITNữ Phép hiệu r1 r1 - r2 = { t | t r1 t r2} Ho Ten GioiTinh Trần E Trần Trần Ho Ten GioiTinh Nữ Trần B Nam B Nam Trần E Nữ C Nam Trần C Nữ r2 r2 – r1 r1 - r2 Ho Ten Trần C GioiTinh Ho NamDept of IS - FIT Trần - HNUE Ten GioiTinh C Nữ Phép tích đề Bộ ghép nối r1 xác định U1 r2 xác định U2 t1= (a1, a2, , an) r1 t2 = (b1, b2, …, bm) r2 (t1,t2) = (a1, a2, , an, b1, b2, …, bm) Ví dụ: U1= {Ho, Ten, GioiTinh}, U2 = {SBD, DiaChi} r1/U1 r2/U2 t1 = (Trần, A, Nam) t2 = (SF001, Hà nội) Dept of IS - FIT - HNUE (t1, t2) = (Trần, A, Nam, SF001, Hà nội) Phép tích đề Định nghĩa phép tích đề r1 x r2 = {t= (a1, a2, , an, b1, b2, …, bm) | (a1, a2, , an) r1 (b1, b2, …, bm) r2 } Dept of IS - FIT - HNUE Ví dụ phép tích đề r1 Ho r x r2 Trần r2 Đỗ Ho Nguyễn Trần A Nữ Trần B Nam Đỗ A Nữ Đỗ B Nam Nguyễn A Nữ Nguyễn B Nam Ten A B GioiTinh Nữ Nam Ten Dept of IS - FIT - HNUE GioiTinh Phép chia r1r2 = {t | t= (am+1, am+2, , an): (a1, a2, , am) r2, (a1, a2, , am, am+1, am+2, , an) r1} Dept of IS - FIT - HNUE Ví dụ phép chia r2 r1 MaSV MaMonHoc Diem MaMonHoc HP1 SP1 HP1 5.0 HP2 SP1 HP2 7.5 HP3 SP2 HP3 4.5 SP1 HP3 8.0 SP2 HP2 Cho biết mã sinh viên có điểm tất 7.5 Dept of IScác - FIT - HNUE học phần? Ví dụ phép chia r3 MaSV, MaMonHoc(r1) r1 MaSV MaMonHoc Diem MaSV MaMonHoc SP1 HP1 5.0 SP1 HP1 SP1 HP2 7.5 SP1 HP2 SP2 HP3 4.5 SP2 HP3 SP1 HP3 8.0 SP1 HP3 SP2 HP2 7.5 SP2 HP2 Dept of IS - FIT - HNUE Ví dụ phép chia r3 MaSV r2 MaMonHoc MaMonHoc HP1 SP1 HP1 HP2 SP1 HP2 HP3 SP2 HP3 SP1 HP3 SP2 HP2 r3 r2 MaSV SP1 Dept of IS - FIT - HNUE Phép chiếu Bộ thu gọn r: xác định tập thuộc tính U X: tập thuộc tính tập U tr t[X]: thu gọn t tập thuộc tính X Ví dụ U={Ho, Ten, GioiTinh} t[X]=(Trần, A) X={Ho, Ten} t=(Trần, A, Nam) Dept of IS - FIT - HNUE Phép chiếu Định nghĩa phép chiếu X(r) = {t[X] | t r} r Ho X={Ho, Ten} X(r) Ho Ten Ten GioiTinh Trần E Nữ Trần E Trần B Nam Trần B Trần C Nam Trần C Dept of IS - FIT - HNUE Phép chọn r F(r) = {t | t r F(t) đúng} Ho F: biểu thức logic xác định Trần E Nữ Trần B Nam Trần C Nam miền giá trị thuộc tính thuộc tập U F(r) Ho Ten Ten GioiTinh GioiTinh Trần B Nam Trần C Nam Dept of IS - FIT - HNUE F: GioiTinh = „Nam‟ Phép kết nối r1ABr2 = {(t,q) | t r1, q r2 t[A] q[B] đúng} Trong r1/U1 r2/U2 : , A U1 B U2 Các giá trị A B so sánh với A B: biểu thức lôgic xây dựng phép so sánh gọi toán tử kết nối Dept of IS - FIT - HNUE Ví dụ phép kết nối r2 r1 Ho Ten NamLenLuong Trần E 2001 Trần B 2000 Trần C 2004 MocTangLuong GhiChu 2001 r1 NamLenLuong MocTangLuong r2 Ho Ten NamLenLuong MocTangLuong Trần E 2001 2001 Trần B 2000 2001 Dept of IS - FIT - HNUE GhiChu ... Hai ngơn ngữ hình thức sở ngơn ngữ SQL Dept of IS - FIT - HNUE Ngôn ngữ đại số quan hệ Dept of IS - FIT - HNUE Giới thiệu Là hai ngôn ngữ hình thức mơ hình liệu quan hệ Là ngơn ngữ có tính... giao, phép hiệu phép tích đề Quan hệ: phép tốn quan hệ phép chọn, phép chiếu, Dept of IS - FIT - HNUE phép kết nối, phép chia Hai quan hệ khả hợp Hai quan hệ khả hợp chúng xác định tập thuộc... CSDL quan hệ dạng Biểu thức ngôn ngữ đại số quan hệ Biểu thức ngôn ngữ tân từ biến biến miền Câu lệnh truy vấn ngôn ngữ SQL Nhận biết tương đương hai ngơn ngữ hình thức đại số quan hệ ngôn