Đề tài QUAN HỆ VÀ ỨNG DỤNG
TIỂU LUẬN MƠN HỌC CƠ SỞ TỐN CHO TIN HỌC Đề tài QUAN HỆ VÀ ỨNG DỤNG Giảng viên Nhóm 1: MỤC LỤC A - MỞ ĐẦU B - NỘI DUNG .2 I QUAN HỆ VÀ CÁC TÍNH CHẤT Định nghĩa quan hệ (quan hệ hai ngôi) 2 Biểu diễn quan hệ 2.1 Phương pháp định nghĩa 2.2 Phương pháp ma trận 2.3 Phương pháp đồ thị Các tính chất quan hệ Quan hệ tương đương 4.1 Định nghĩa: 4.2 Tính chất 4.3 Định nghĩa phân hoạch tập hợp Tổ hợp quan hệ Quan hệ thứ tự .6 6.1 Định nghĩa .6 6.2 Định nghĩa (Quan hệ thứ tự phận, quan hệ thứ tự toàn phần): .6 6.3 Các phần tử đặc biệt tập thứ tự .6 6.4 Định nghĩa .6 6.5 Định nghĩa .7 6.6 Định nghĩa .7 Dàn, dàn đầy đủ .7 7.1 Định nghĩa Dàn (Lattice) 7.2 Dàn đầy đủ II ỨNG DỤNG QUAN HỆ VÀO CƠ SỞ DỮ LIỆU QUAN HỆ Định nghĩa quan hệ Ký hiệu Các phép toán đại số quan hệ 10 3.1 Các phép toán lý thuyết tập hợp 11 3.2 Các phép toán sở liệu quan hệ 12 C - KẾT LUẬN 17 TÀI LIỆU THAM KHẢO8 Quan hệ ứng dụng A - MỞ ĐẦU Đại số quan hệ (tiếng Anh: relational algebra) dùng phổ biến lí thuyết sở liệu quan hệ tốn tử quy tắc tương ứng sử dụng để thao tác toán học (relation) tạo kết quan hệ khác Trước đây, đại số quan hệ quan tâm Edgar F Codd đưa mô hình liệu quan hệ (relational model) vào năm 1970 Từ đến nay, đại số quan hệ xem tảng cho ngôn ngữ truy vấn sở liệu Các mối quan hệ phần tử tập hợp xuất nhiều bối cảnh Thường ngày ta gặp mối quan hệ này, chẳng hạn mối quan hệ trường học với số điện thoại nó, mối quan hệ giáo viên với lương người đó, mối quan hệ người với người thân anh ta… Trong toán học, ta nghiên cứu mối quan hệ mối quan hệ số nguyên dương ước số nó, mối quan hệ số nguyên số nguyên khác đồng dư với theo môđulô n, mối quan hệ số thực số thực khác lớn nó….Các mối quan hệ phần tử tập hợp biểu diễn cách dùng cấu trúc gọi quan hệ Cách trực tiếp để biểu diễn mối quan hệ phần tử hai tập hợp dùng cặp tạo hai phần tử có quan hệ Vì lý đó, tập cặp gọi quan hệ hai Mở rộng quan hệ hai quan hệ n-ngôi Từ định nghĩa quan hệ ta ứng dụng vào mơ hình “Cơ sở liệu quan hệ”- Có thể hiểu liệu người sử dụng nhìn dạng quan hệ tốn học phép toán thao tác liệu xây dựng cấu trúc quan hệ toán học Một quan hệ bảng bảng cấu trúc quan hệ toán học Trong đề tài tiểu luận nhóm chúng tơi khác niệm quan hệ toán học áp dụng phép tốn đại số quan hệ vào mơ hình sở liệu quan hệ Xin chân thành cảm ơn thầy PGS.TS Trương Cơng Tuấn hướng dẫn để nhóm hồn thành tiểu luận Nhóm – KHMT 2014 – 2016 Trang Quan hệ ứng dụng B - NỘI DUNG I QUAN HỆ VÀ CÁC TÍNH CHẤT Định nghĩa quan hệ (quan hệ hai ngôi) Cho hai tập A, B Một quan hệ R từ A vào B tập tích đề A ×B Khi A=B ta nói R quan hệ A Ví dụ : A={1,2,3} ; B={a,b} ⇒ có 26 tập Một số quan hệ từ A vào B R1={(1,a),(1,b)} ¿ A×B R2={(1,a),(1,b),(2,a),(2,b)} ¿ A×B Biểu diễn quan hệ 2.1 Phương pháp định nghĩa Theo hai cách: liệt kê mơ tả tính chất Ví dụ : Cho tập hợp A={1,2,5,6,9} Xét quan hệ R A xác định bởi: ∀ a,b ¿ ¿ A, aRb ⇔ a chia hết cho b, (a,b) R ⇒ R={(1,1),(2,1),(2,2),(5,1),(5,5),(6,1),(6,2),(6,6),(9,1),(9,9)} Xét tập A trên, quan hệ S A xác định bởi: ∀ a,b ¿ A, aSb ⇔ a chia hết b (a|b) ⇒ S={(1,1),(2,2),(5,5),(6,6),(9,9),(1,5),(1,6),(1,2),(2,6)} 2.2 Phương pháp ma trận Một quan hệ tập hữu hạn biểu diễn ma trận zero-một Giả sử R quan hệ từ tập A={a 1,a2,….,am} tới tập B={b1,b2,….bm} Quan hệ R biểu diễn ma trận MR=[ α ij ], : Ví dụ : Ma trận biểu diễn R ví dụ a) : 1 1 1 0 0 0 0 0 ( ) Nhóm – KHMT 2014 – 2016 Trang Quan hệ ứng dụng 2.3 Phương pháp đồ thị Biểu diễn quan hệ đồ thị có hướng G= Trong đó: V tập đỉnh {a1,a2, ,an} E tập cạnh có hướng, xác định bởi: Có cạnh có hướng từ đến aj aiRaj Ví dụ : Biểu diễn đồ thị quan hệ S ví dụ b) Các tính chất quan hệ Cho quan hệ R tập A Phản xạ ∀ a ¿ Đối xứng ∀ a,b A, a R a ¿ A, a R b ⇒ b R a Phản đối xứng ∀ a,b Bắc cầu ∀ a,b,c ¿ A, a R b b R a ⇒ a=b ¿ A, a R b b R c ⇒ a R c Ví dụ : Trên tập Ν , xét quan hệ “|” Phản xạ : Khơng có N ¿ Đối xứng : Khơng ∃ 1,3 Phản đối xứng : Có ∀ a,b Bắc cầu : Có ∀ a,b,c ¿ N mà 1|3 không chia hết ¿ ¿ N, a|b b|a ⇒ a=b N, giả thiết a|b b|c ⇒ a|c Chú ý : Trên N*, quan hệ “|” có tính chất phản xạ, phản đối xứng, bắc cầu Quan hệ tương đương 4.1 Định nghĩa: Quan hệ R tập A gọi quan hệ tương đương thỏa ba tính chất: phản xạ, đối xứng bắc cầu Ví dụ: Trên Z, xét quan hệ R xác định ∀ m,n ¿ Z, m R n ⇔ m-n=3k R quan hệ tương đương Z gọi quan hệ đồng dư modulo (cùng số dư) Nhóm – KHMT 2014 – 2016 Trang Quan hệ ứng dụng 4.2 Cho R quan hệ tương đương A Lúc : A, a≠¿¿ ∅ Trong a ={x ∀ a a = b a = b a ¿ A | a R x}: Lớp tương đương a ¿ ⇔ aRb b =∅ , ¿ ∀ a,b A ¿ 4.3 Định nghĩa phân hoạch tập hợp Cho tập A ¿ ∅, họ tập hợp (Ai)i (i) Ai ¿ ∅ , ∀ i (ii) Ai ¿ (iii) i∈I ¿ gọi phân hoạch tập A nếu: I Aj = ∅ , ∀ i,j ¿ ¿ I ¿ I Ai=A * Mệnh đề: Tập lớp tương đương (theo quan hệ tương đương R) tập A ¿ ∅ tạo thành phân hoạch tập A * Chú ý: Tập lớp tương đương theo quan hệ tương đương R A gọi tập hợp thương, ký hiệu A/ R * Ví dụ: Xem quan hệ đồng dư module Z Tìm tập hợp thương Z3 ={m ={m Z | m=3k , k ¿ Z | m=3k +1 , k ¿ = {m Z} ¿ ¿ Z} ¿ Z | m=3k +2 , k ¿ Z} = ; = , , } Vậy Z3={ * Vấn đề: Cho tập A ¿ ∅ phân hoạch (Ai)i ¿ I tập A Hãy tìm quan hệ tương đương A sinh phân hoạch động? * Mệnh đề: Mỗi phân hoạch tập A xác định quan hệ tương đương A Chứng minh: Giả sử (Ai)i ∀ a,b ¿ ¿ I A, a R b ⇔ phân hoạch A Quan hệ R A sau : ∃ i ¿ I : a,b ¿ Ai Ta chứng minh R quan hệ tương đương Phản xạ : ∀ a ¿ A= ¿ i∈I Ai ⇒ Đối xứng : ∀ a,b ¿ ∃ i ¿ I : a ¿ Ai ⇒ a R a A, a R b ⇒ ∃ i ¿ I : a,b ¿ Ai ⇒ bR a Nhóm – KHMT 2014 – 2016 Trang Quan hệ ứng dụng Bắc cầu : ∀ a,b,c ∃ i ¿ I : a,b ¿ Ai ⇒ A, giả sử : a R b ¿ ¿ bRc ∃ i ¿ I : b,c ¿ Ai ⇒ i=j Ai=Aj ( i ¿ j b ¿ Ai ¿ Aj : vơ lý) Vậy R có tính bắc cầu R quan hệ tương đương ⇒ Ví dụ : Cho A={1,2,4,6,9,12,15} phân hoạch (A i)1 ¿ i≤3 tập A, với A1={1,4}, A2={2,6,9},A3={12,15} Tìm quan hệ tương đương sinh phân hoạch liệt kê phần tử ∀ a,b ¿ A, a R b ⇒ ∃ i ¿ {1,2,3} : a,b ¿ Ai R={(1,1),(1,4),(4,1),(4,4),(2,2),(2,6),(6,2),(2,9),(9,2),(6,6),(9,9),(6,9),(9,6),(12,12), (15,15),(12,15),(15,12)} =A1 , =A4 , = = =A2 , 12 = 15 =A3 Tổ hợp quan hệ Định nghĩa: Cho ba tập A, B, C R quan hệ từ A vào B S quan hệ từ B vào C Hợp thành quan hệ R S, ký hiệu SoR xác định SoR={(a,c) | a A,c ¿ ¿ C: ∃ b ¿ B để aRb bSc} Từ định nghĩa này, ta định nghĩa lũy thừa quan hệ R tập A Ký hiệu Rn(n ¿ 1) R1=R R2=RoR R3=R2oR ……… Rn=Rn-1oR * Chú ý: (a,b) ¿ Rn ⇔ ∃ x1,x2,….,xn-1 ¿ A cho a R x1,x1 R x2,… ,xn Rb * Mệnh đề: Quan hệ R A có tính bắc cầu ∀ n ¿ ⇔ Rn R (R n ¿ R) N* =N \{0} * Định nghĩa bao đóng bắc cầu quan hệ : Cho tập A quan hệ R A, ký hiệu [R] quan hệ nhỏ chứa R có tính bắc cầu Ví dụ: Cho A={a,b,c} , R={(a,b),(b,c)} [R]={(a,b),(b,c),(a,c)} Nhóm – KHMT 2014 – 2016 Trang Quan hệ ứng dụng * Định lý : Cho quan hệ R tập A hữu hạn có n phần tử (n ¿ 1), lúc [R]=R ¿ R2 ¿ ¿ Rn- Quan hệ thứ tự 6.1 Định nghĩa: Một quan hệ R tập A gọi quan hệ ¿ ứ tự thỏa mãn ba tính chất: phản xạ, phản đối xứng, bắc cầu Ví dụ : Trên R, xét quan hệ ¿ thông thường quan hệ thứ tự Trên tập P(A), xét quan hệ ¿ quan hệ thứ tự Trên tập N*, xét quan hệ | quan hệ thứ tự 6.2 Định nghĩa (Quan hệ thứ tự phận, quan hệ thứ tự toàn phần): Một quan hệ thứ tự R tập A gọi quan hệ thứ tự tồn phần ∀ a,b ¿ A a R b b R a Ngược lại R gọi quan hệ thứ tự phận Ví dụ: Quan hệ ¿ R quan hệ thứ tự toàn phần Quan hệ | N* quan hệ thứ tự phận ∃ 2,3 ¿ N* (2 không chia hết 3, không chia hết 2) Quan hệ ¿ tập P(A) Quan hệ thứ tự tồn phần A=∅ hay A có phần tử hay A có phần tử Quan hệ thứ tự phận |A|>1 6.3 Các phần tử đặc biệt tập thứ tự Một tập A với quan hệ thứ tự A gọi tập thứ tự Ta ký hiệu quan hệ thứ tự A ¿ , gọi X ¿ ∅ tập A a) Phân từ a ¿ X gọi phần tử lớn X ∀ x ¿ X, x ¿ a b) Phân tử a ¿ X gọi phần tử nhỏ X ∀ x ¿ X, a ¿ x Ví dụ: Trên N*, xét X={1,2,4,6} , quan hệ | Phần tử lớn X: Khơng có Phần tử nhỏ X: * Chú ý : Phần tử lớn nhất, nhỏ khơng tồn tại, tồn 6.4 Định nghĩa Phần tử c ¿ A gọi chặn tập X ∀ x Phần tử c ¿ A gọi chặn tập X ∀ c Nhóm – KHMT 2014 – 2016 ¿ ¿ X, x ¿ c X, c ¿ x Trang Quan hệ ứng dụng Ví dụ: Xét X={1,3,6,7,8} ¿ (N, ¿ ) Phần tử lớn X Phần tử nhỏ X Tập phần tử chặn {n N | n ¿ 8} ¿ Tập phần tử chặn {0,1} * Chú ý : Các phần tử chặn chặn tập hợp khơng thuộc tập hợp vơ hạn phần tử 6.5 Định nghĩa Phần tử cận tập X ¿ A phần tử nhỏ tập chặn X Ký hiệu supX Phần tử cận tập X ¿ A phần tử lớn tập chặn Ký kiệu inf X Ví dụ : Cho A={1,2,3}, A1={{1},{1,2},{2,3}} ¿ (P(A, ¿ ) ¿ A supA1={1,2,3}= A∈A1 ¿ A infA1=∅= A∈A1 6.6 Định nghĩa Phần tử m X ¿ A gọi phần tử tối đại (hoặc cực đại) X ∀ x X, m ¿ x ⇒ m=x ¿ Phần tử m x ¿ ¿ ¿ X ¿ A gọi phần tử tối tiểu (hoặc cực tiểu) X ∀ X, x ¿ m ⇒ x=m Ví dụ: Trên N*, Cho X={2,3,5,6,9}, quan hệ | Phần tử tối tiểu : 2,3,5 Phần tử tối đại : 5,6,9 * Chú ý: Nếu m phần tử lớn X m phần tử tối đại, nhỏ tối tiểu Điều ngược lại khơng Ví dụ: A={1,2,3,4} Xét A1={{1},{2},{2,3}} ¿ (P(A), ¿ ) Phần tử tối đại : {1},{2,3} Phần tử tối tiểu : {1},{2} Nhóm – KHMT 2014 – 2016 ¿ ¿ A1 A17 Dàn, dàn đầy đủ Trang Quan hệ ứng dụng 7.1 Định nghĩa Dàn (Lattice): Cho tập A quan hệ thứ tự ¿ dàn ∀ a,b ¿ A tồn sup{a,b} inf{a,b} Ví dụ: Tập (P(A), ¿ ) dàn ∀ A,B,C inf{A,B}=A ¿ A A gọi ¿ P(A), sup{A,B}=A ¿ B B 7.2 Dàn đầy đủ (A, ¿ ) gi dàn đầy đủ ∀ B ¿ A khác rỗng tồn cận cận II ỨNG DỤNG QUAN HỆ VÀO CƠ SỞ DỮ LIỆU QUAN HỆ Định nghĩa quan hệ Cho K:= {A1 , A2 , , An} tập hữu hạn thuộc tính, khác rỗng phần tử khơng thiết phân biệt Mỗi thuộc tính A i ¿ K, i = 1,n có miền giá trị xác định, (Domain), ký hiệu D(A i) = Dom(Ai) Ví dụ, tập ký tự số có chiều dài xác 7, miền của thuộc tính số điện thoại Tích Đề miền Dom(A1), Dom(A2) Dom(An) biểu diễn sau: Dom(A1) x Dom(A2) x x Dom(An ) : = {(a1,a2,….,an)/ai Ai , , i = ¿ 1,n } Nói R quan hệ tập K tập tích Đề của: D(a1) x D(a2) x x D(an) Ký hiệu R(K) = R(A1 , A2 , , An) Tức là: R(K) ¿ D(a1) x D(a2) x x D(an) Như quan hệ R(K) tập K tập các hàm: R(K) :={r/r : K → D(A), A ¿ ¿ K} Mỗi hàm quan hệ gọi dịng quan hệ Vì cách tiếp cận mơ hình CSDL quan hệ, người ta thường biểu diễn quan hệ tập thuộc tính K bảng chiều Các thuộc tính (Attributes) quan hệ cột A1,A2, ,An , không thiết phân biệt hàng quan hệ gọi (tuple), hay gọi ghi quan hệ, ký hiệu r ¿ R(K) Giá trị gồm n thành phần giá trị r = (d 1, d2, ,dn) rút giá trị từ miền xác định tương ứng, tức r(A1) = d1 ¿ D(A1), r(A2) = d2 ¿ D(A2), , r(An) = dn ¿ D(An), ký hiệu: D(Ai) := Dom(Ai) miền xác định Ai ¿ K, i = 1,n Có thể định nghĩa quan hệ R(K) cách khác sau: R(K) = {(d1, d2, , dn )/di Nhóm – KHMT 2014 – 2016 ¿ D(Ai) , Ai ¿ K,i= 1,n Trang Quan hệ ứng dụng A1 A2 An r1 (A1) r1 (A2) r1 (An) r2 (A1) r2 (A2) r2 (An) rn (A1) rn (A2) rn (An) Ký hiệu Bậc quan hệ: Số thuộc tính quan hệ R(K) Số n_bộ quan hệ gọi lực lượng quan hệ Ký hiệu /R/ n_bộ : (d1, d2, , dn) ghi, thường biểu diễn chữ La tinh nhỏ, ví dụ r: = (d1, d2, , dn ) ¿ R(K) X tập thuộc tính, ký hiệu X ¿ K, ∀ A ¿ X, suy A ¿ K Nghĩa thuộc tính X thuộc tính K Tổng quát X ¿ Y với thuộc tính X thuộc tính Y Nếu ∀ X ¿ K ∀ r ¿ R(K) Khi phép chiếu X r hiểu sau: Nếu r: = (d1, d2, , dn) r[X] := r(X) := (di1, di2, ,dik), tức r[X] giá trị r chứa giá trị thuộc tính X Cho hai ∀ r1, r2 ¿ R( Ω ), r1 = (d1, d2, , dn) r2 = (h1, h2, , hn) Khi nói r1 trùng r2 hiểu : r1 ¿ r2 r1 khác r2 : r1 ¿ r2 ⇔ ∃ i ¿ ⇔ di = hi , i = n {1,2 ,n} cho di = hi Ví dụ 1: Quan hệ khách hàng đặt mua báo:KHACHHANG (M#,TK,DC,SDT) Trong đó: M# ký hiệu mã khách đặt mua báo, TK tên khách, DC địa khách hàng SDT số điện thoại khách Miền giá trị M# tập hợp (M01, M02, M13, M13), miền giá trị TK họ tên khách đặt mua báo, Quan hệ KHACHHANG bảng chiều, cột thuộc tính M#, TK, DC SDT, hàng bảng thông tin khách hàng đặt mua báo Quan hệ tập ghi gồm thành phần mã khách, họ tên khách, địa khách số điện thoại khách Ví dụ (M01, Nguyễn Ngọc An, 24 Nguyễn Biểu, 822134) M# TK DC SD M01Nguyễn Ngọc An24 Nguyễn Biểu 8222134 T M02Hồ Ngọc Hà 174Tơn Đức Thắng Nhóm – KHMT 2014 – 2016 Trang Quan hệ ứng dụng M12Tô Ngọc Long 54 Tràng Thi M13Phan Đăng Cầu 134 Đội Cấn 5241234 8345123 Quan hệ BAO (MB#,TBAO,GIA,KY,NXB) bảng thông tin loại báo: MB#: Mã báo, TBAO: Tên khách hàng, GIA: Giá báo, KY: Kỳ phát hành, NXB: Nhà xuất MB# TBAO GIA KY NXB A01 Nhân Dân 1.000 NGAY Nhân Dân A02 Quân đội Nhân Dân 1.000 NGAY Quân Đội B01 600 Hà Nội Mới NGAY Tiến Bộ Quan hệ DAT_MUA bảng biểu diễn thông tin phiếu đặt mua báo, tạp chí khách hàng: DAT_MUA (M#,MB#,NG,SL) M# : Mã Khách, MB# : Mã báo, NG : Ngày đặt mua, SL : Số lượng M# M01 M01 M02 M02 M12 M12 M12 M13 MB# A01 A02 A01 A02 A01 A03 B01 A02 NG 1/2/2000 4/2/2000 1/3/2000 1/4/2000 1/6/2000 1/5/2000 1/4/2000 1/4/2000 0 0 SL 10 15 30 12 23 50 90 15 Các phép toán đại số quan hệ Ngoài việc định nghĩa cấu trúc sở liệu ràng buộc, mơ hình liệu phải chứa tập hợp phép toán để thao tác liệu Tập hợp sở phép tốn mơ hình quan hệ tạo nên đại số quan hệ Các phép toán giúp cho người sử dụng xác định rõ ràng yêu cầu lấy tin cở Kết phép lấy tin quan hệ mới, tạo từ nhiều quan hệ Các quan hệ thao tác cách sử dụng phép toán đại số Một dãy phép toán quan hệ tạo nên biểu thức đại số quan hệ mà kết quan hệ Các phép toán đại số quan hệ chia thành hai nhóm Một nhóm bao gồm phép tốn tập hợp lấy từ lý thuyết tập hợp toán học Các phép tốn phép hợp, phép giao, phép trừ tập hợp phép tích Đề_các Nhóm bao gồm phép tốn xây Nhóm – KHMT 2014 – 2016 Trang 10 Quan hệ ứng dụng dựng đặc biệt cho sở liệu quan hệ Các phép tốn phép chọn, phép chiếu, phép nối số phép toán khác 3.1 Các phép tốn lý thuyết tập hợp Nhóm phép toán đại số quan hệ phép tốn tốn học thơng thường tập hợp Đó phép tốn hợp, giao trừ tập hợp Các phép toán phép toán hai ngơi, nghĩa phép tốn áp dụng cho hai tập hợp Khi áp dụng phép toán cho sở liệu quan hệ, hai quan hệ tham gia vào phép toán phải có kiểu nhau, hay nói cách khác, chúng phải có cấu trúc Điều kiện gọi tương thích đồng Hai quan hệ R(A1, A2,…., An) S(B1, B2,…., Bn) gọi tương thích đồng chúng cung cấp n dom(Ai) = dom(Bi), với ≤ i ≤ n Điều có nghĩa hai quan hệ có số thuộc tính cặp thuộc tính tương ứng có miền giá trị Các phép tốn định nghĩa sau: Phép hợp: Hợp hai quan hệ R S, ký hiệu RS, cho kết quan hệ chứa tất có R, tróng, hai Với phép toán hợp trùng lặp bị loại bỏ Phép giao: Giao hai quan hệ R s, ký hiệu RS, cho kết quan hệ chứa tất có hai quan hệ R S Phép trừ quan hệ: Phép trừ quan hệ R S, ký hiệu R-S, cho kết quan hệ chứa tất có R khơng có S Ví dụ: Xét hai quan hệ: R Giới_tín Họ_tên Tuổi AA BB CC DD 20 18 21 25 Họ_tên Tuổi AA BB CC 20 18 21 h Nam Nữ Nam DD 25 Nữ EE 20 Nam h Nam Nữ Nam Nữ S Họ_tên Tuổi BB EE DD FF 18 20 25 21 Họ_tên Tuổi BB DD 18 25 Họ_tên Tuổi AA 20 Giới_tín h Nữ Nam Nữ Nam Khi đó: RS Nhóm – KHMT 2014 – 2016 Giới_tín RS R-S Giới_tín h Nữ Nữ Giới_tín h Nam Trang 11 Quan hệ ứng dụng FF 21 Nam CC 21 Nam Các phép toán phép toán tập hợp: + Phép toán hợp giao phép toán giao hoán, nghĩa là: R S = S R R S = S R + Các phép tốn có tính chất kết hợp, nghĩa là: R (S T) = (R S) T R (S T) = (R S) T + Các phép toán trừ tập hợp khơng có tính chất giao hốn, tức là: R–S≠S–R Tích đề-các hai quan hệ: Tích đề cịn gọi tích hỗn hợp (cross product), nối hỗn hợp (cross jone), ký hiệu x Tích đề-các phép tốn hai ngơi, quan hệ mà áp dụng khơng cần phải tương thích đồng Phép toán sử dụng để nối hai quan hệ vào kiểu kết hợp Kết R(A1, A2, …, An) x S(B1, B2, …, Bn) quan hệ Q với n + m thuộc tính Q(A1, A2, …, An, B1, B2, …, Bn) Quan hệ kết Q có tạo thành kết hợp R S Ví dụ, xét hai quan hệ R S sau: R A1 A2 A3 aa ab bb ba Cc Ac S B1 B2 B3 dd cd da cb db ac Tích đề chúng quan hệ: RxS A1 A2 A3 B1 B2 B3 aa aa ab ab bb bb ba ba Cc Cc Ac Ac dd cd dd cd da cb da cb db ac db ac Như vậy, R có nR S có nS R x S có nR x nS Phép tốn áp dụng khơng có ý nghĩa Nó có lợi phép chọn giá trị tương thích thuộc tính xuất phát từ quan hệ thành phần Tích đề-các kết hợp với phép chọn cho ta phép nối 3.2 Các phép toán sở liệu quan hệ Phép chọn (Select) Nhóm – KHMT 2014 – 2016 Trang 12 Quan hệ ứng dụng Phép chọn sử dụng để chọn tập hợp thỏa mãn điều kiện chọn từ quan hệ Ta xem phép chọn lọc, giữ lại thỏa mãn điều kiện đặt Phép chọn ký hiệu là: (R), ký hiệu dùng để ký hiệu phép chọn, biểu thức lơgic thuộc tính R Chú ý rằng, R nói chung biểu thức đại số quan hệ Kết biểu thức đại số quan hệ quan hệ Biểu thức đơn giản tên quan hệ sở liệu Quan hệ kết phép chọn có thuộc tính R Ví dụ, để chọn NHÂN_VIÊN thuộc đơn vị có mã số 4, NHÂN_VIÊN có lương lớn 3000000 to viết sau: NHÂN_VIÊN 3000000>NHÂN_VIÊN Biểu thức lôgic tạo nên từ số hậng mục có dạng: Hoặc Trong tên thuộc tính R, phép so sánh {=, ≠}, giá trị từ miền giá trị thuộc tính Các hạng mục nối với phép tốn lơgic AND, OR, NOT để tạo điều kiện chung Ví dụ, để chọn nhân viên làm việc đơn vị có mã số đơn vị có lương lớn 3000000, nhân viên làm việc đơn vị có mã số có lương lớn 4000000 ta viết phép chọn sau: AND 3000000>OR AND 4000000>(NHÂN_VIÊN) Chú ý rằng, phép toán so sánh tập hợp {=, ≠} áp dụng cho thuộc tính có miền giá trị giá trị có thứ tự miền giá trị số Miền giá trị dãy ký tự xem có thứ tự dựa việc so sánh dãy ký tự Nếu miền giá trị thuộc tính tập hợp giá trị khơng có thứ tự có phép tính so sánh tập hợp {=, ≠} áp dụng Ngồi ra, cịn phép sa sánh bổ sung, chẳng hạn “là dãy của…” “trong khoảng từ … đến …” Nhóm – KHMT 2014 – 2016 Trang 13 Quan hệ ứng dụng Kết phép chọn xác định sau: bao gồm thuộc tính khơng phải thuộc tính khóa R quan hệ kết có trùng Phép chiếu loại bỏ trùng lặp, vậy, kết phép chiếu tập hợp quan hệ đắn Nhóm – KHMT 2014 – 2016 Trang 14 Quan hệ ứng dụng Ví dụ: Phép chiếu Mã_số_NV, Họ_đêm, Tên, Lương(NHÂN_VIÊN) Cho kết quan hệ có thuộc tính Mã_số_NV, Họ_đệm, Tên, Lương Bảng kết phép chiếu sau: Mã_số_NV NV001 NV002 NV010 NV014 NV016 NV018 NV025 NV061 Họ_đệm Lê Trần Đức Hoàng Phạm Nguyễn Vũ Hương Trần Lê Bùi Tên Vân Nam Thanh Bằng Sơn Giang Hậu Hoa Lương 3000000 3500000 3500000 4000000 4500000 3700000 3900000 4200000 Số quan hệ kết từ phép chiếu luôn nhỏ số R Nếu danh sách chiếu siêu khóa R (nghĩa chứa khóa R) quan hệ kết có số R Ngoài ra, phép chiếu có tính chất sau: ((R)) = (R) Phép chiếu khơng có tính giao hốn Phép đặt lại tên (Remane) Chúng ta áp dụng nhiều phép toán quan hệ liên tiếp Trong trường hợp đó, viết phép toán biểu thức đại số quan hệ đơn cách xếp lồng phép tốn lại với nhau, chúng áp dụng phép toán thời điểm tạo mối quan hệ kết trung gian Trong trường hợp tạo quan hệ trung gian, cần phải đặt tên cho quan hệ Ví dụ: Để đưa Họ_tên Lương NHÂN_VIÊN làm việc đơn vị có mã số 4, phải áp dụng phép chọn phép chiếu Có thể viết biểu thức đại số quan hệ đơn sau: ((NHÂN_VIÊN) Một cách khác, tạo kết trung gian viết biểu thức thành dãy phép toán sau: KQTG (NHÂN_VIÊN) Kết (KQGT) Thông thương việc phân tích dãy phức tạp phép tốn cách quan hệ kết trung gian dễ việc viết biểu thức đại số quan hệ đơn Chúng ta Nhóm – KHMT 2014 – 2016 Trang 15 Quan hệ ứng dụng dùng kỹ thuật để đặt lại tên cho thuộc tính quan hệ trung gian kết Để đặt lại tên cho thuộc tính quan hệ, liệt kê tên thuộc tính cặp dấu ngoặc Ví dụ: R(Họ_và_tên, Lương) (KQGT) cho kết quan hệ R, thuộc tính Họ_tên đặt lại tên thành Họ_và_tên Nếu khơng có việc đặt lại tên tên thuộc tính quan hệ kết phép chọn giống tên quan hệ ban đầu có thứ tự thuộc tính Đối với phép chieeus, khơng có việc đặt lại tên quan hệ kết có tên thuộc tính giống tên danh sách chiếu có thứ tự chúng xuất danh sách Nhóm – KHMT 2014 – 2016 Trang 16 Quan hệ ứng dụng C - KẾT LUẬN Đại số quan hệ (tiếng Anh: relational algebra) dùng phổ biến lí thuyết sở liệu quan hệ tốn tử quy tắc tương ứng sử dụng để thao tác toán học (relation) tạo kết quan hệ khác Trước đây, đại số quan hệ quan tâm Edgar F Codd đưa mơ hình liệu quan hệ(relational model) vào năm 1970 Từ đến nay, đại số quan hệ xem tảng cho ngôn ngữ truy vấn sở liệu Từ định nghĩa quan hệ ta ứng dụng vào mơ hình “Cơ sở liệu quan hệ”- Có thể hiểu liệu người sử dụng nhìn dạng quan hệ toán học phép toán thao tác liệu xây dựng cấu trúc quan hệ toán học Một quan hệ bảng bảng cấu trúc quan hệ toán học Trong đề tài tiểu luận nhóm chúng tơi khái niệm quan hệ toán học áp dụng phép toán đại số quan hệ vào mơ hình sở liệu quan hệ Vì kiến thức cịn hạn chế nên chắn khơng tránh khỏi thiếu sót, kính mong góp ý thầy bạn để tiểu luận hoàn thiện Nhóm – KHMT 2014 – 2016 Trang 17 Quan hệ ứng dụng TÀI LIỆU THAM KHẢO [1] Nguyễn Gia Định, Giáo trình sở tốn học, ĐHKH Huế, 2005 [2] Hồ Thuần, Hồ Cẩm Hà, Giáo trình sở liệu, Nhà xuất giáo dục, 2004 [3] www.vi.wikipedia.org Nhóm – KHMT 2014 – 2016 Trang 18