![](images/graphics/blank.gif)
Bài tập về quan hệ đại số
lượt xem 108
download
![](https://tailieu.vn/static/b2013az/templates/version1/default/images/down16x21.png)
NHẬP MÔN CSDL QUAN HỆ Soạn bởi bộ môn Công nghệ phần mềm 1. BµI TËP VÒ ĐẠI SỐ QUAN HỆ MỤC TIÊU CỦA BÀI NÀY GIÚP NGƯỜI HỌC Phân biệt các phép toán trên quan hệ, các tính chất c ủa đ ại
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài tập về quan hệ đại số
- NHẬP MÔN CSDL QUAN HỆ Soạn bởi bộ môn Công nghệ phần mềm 1. BµI TËP VÒ ĐẠI SỐ QUAN HỆ MỤC TIÊU CỦA BÀI NÀY GIÚP NGƯỜI HỌC Phân biệt các phép toán trên quan hệ, các tính chất c ủa đ ại s ố quan hệ. Kết hợp các phép toán để giải quyết các yêu cầu cụ thể. A/ NHẮC LẠI LÝ THUYẾT I. CÁC CÔNG THỨC QUAN TRỌNG Phép hợp: Cho hai quan hệ R và S có cùng tập thuộc tính là U, Khi đó h ợp c ủa hai quan h ệ R và S, kí hiệu là R+S, đó cũng là m ột quan h ệ có t ập thu ộc tính là U, và đ ược xác đ ịnh như sau: R+S={ t | t ∈ R hoặc t∈ S} Phép giao: Cho 2 quan hệ R và S, có cùng tập thuộc tính U, giao c ủa 2 quan h ệ R và S, kí hi ệu là R.S, là một quan hệ trên t ập thuộc tính U và chỉ gồm t ất c ả các b ộ t v ừa thu ộc R v ừa thuộc S, tức là: R.S={ t | t∈ R và t ∈ S } Phép hiệu: Cho R và S là 2 quan hệ trên t ập thuộc tính U, hi ệu hai quan h ệ R và S, kí hi ệu là R\S, là một quan hệ trên tập thuộc tính U, và được xác định nh ư sau: R-S= { t | t∈ R và t ∉ S} Phép chọn: Cho quan hệ R trên tập thuộc tính U và E là bi ểu thức ch ọn trên t ập thu ộc tính U, phép chọn quan hệ R theo biểu thức chọn E đựơc kí hi ệu là R(E), đó là một quan h ệ trên tập thuộc tính U, và được xác định như sau: R(E)= { t | t ∈ R và t(E) } Phép chiếu: Cho quan hệ R trên tập thuộc tính U, φ≠ X⊆ U là một tập con các thuộc tính của U, phép chiếu của quan hệ R lên tập thuộc tính X, đ ược kí hi ệu là R[X], đó là m ột quan h ệ trên tập thuộc tính X, và được xác định như sau: R[X] = { t.X | t ∈ R} Phép chia: Cho lược đồ quan hệ R={A1, A2,…, An}. Cho quan hệ R(U), và S(V), v ới ∅ ≠ V ⊆ U, đặt X = U\V. Phép chia quan hệ R cho quan hệ S, ký hi ệu là R ÷ S là một quan hệ trên tập thuộc tính X và được xác định: R ÷ S ={ t.X\ t ∈ và ∀ V ∈ S và ∈ R} Trong định nghĩa trên chú ý rằng ký hiệu là s ự ghép vào đúng v ị trí c ủa hai xâu t và u. Phép kết nối θ Trang 1
- NHẬP MÔN CSDL QUAN HỆ Soạn bởi bộ môn Công nghệ phần mềm - Sau đây ta sẽ xét phép kết nối theo toán tử θ , với θ là một toán tử so sánh số học 2 ngôi (=, , ≤, ≥, ≠). - Cho A ⊆ U, B ⊆ V là các thuộc tính, t1, t2 l ần l ượt là 2 b ộ trên U và V. Khi đó, t1, t2 có thể kết nối với nhau nếu t1.A θ t2.B, ký hiệu là t= là kết quả kết nối của t1, t2. Định nghĩa: Cho 2 quan hệ R(U) và S(V) l tương ứng trên các lược đ ồ rời nhau R và S t ức R ∩ S = ∅. θ là phép so sánh, A ∈ U, B ∈ S . Phép kết nối quan hệ R và S theo đi ều ki ện A θ B được ký hiệu là: { t\ ∃ t1 ∈ R, t2 ∈ S, t =, sao cho t1.A θ t2.B } Aθ B = R= */ Phép kết nối tự nhiên Định nghĩa: Cho 2 quan hệ R(U), S(V), đặt X= U ∩ V, phép kết nối tự nhiên của quan hệ R và S, ký hiệu là R* S, được xác định như sau: R*S = { t\ ∃ t1 ∈ R, t2 ∈ S để t1.X = t2.X} */ Phép kết nối một nửa Với giả tihết như trên với R(U), S(V). Ta có phép kết nối nửa sau: S = { t\ t ∈ (R R S) [U]} II. CÁC VÍ DỤ Ví dụ 1: Đây là phép chiếu trên quan hệ R R A B C D R[AC] A C a1 b3 c1 d1 a1 c1 a2 b2 c1 d3 a2 c1 a1 b1 c1 d2 a3 c2 a3 b1 c2 d5 a1 b3 c1 d6 Ví dụ 2: Đây là phép kết nối trên 2 quan hệ Giả sử r và s là các quan hệ như sau: r A B C s D E 1 2 3 3 1 4 5 6 6 2 7 8 9 Khi đó, ta có r s 2
- NHẬP MÔN CSDL QUAN HỆ Soạn bởi bộ môn Công nghệ phần mềm 1 2 3 3 1 1 2 3 6 2 4 5 6 6 2 Ví dụ 3: Đây là phép kết nối trên 2 quan hệ Cho hai quan hệ R và S như sau: R A B C S C D a1 1 c1 c1 4 a2 2 c1 c1 3 a1 3 c1 c2 2 a3 4 c2 c2 1 Phép so sánh là B > D khi đó A B C C D R S B>D a2 2 c1 c2 1 a1 3 c1 c2 2 a1 3 c1 c2 1 a3 4 c2 c1 3 a3 4 c2 c2 2 a3 4 c2 c2 1 Ví dụ 4: Đây là phép kết nối nửa trên 2 quan hệ r A B C s C D a b c b c d d b c b c e b b f a d b c a d Khi đó ta có: r s A B C Trang 3
- NHẬP MÔN CSDL QUAN HỆ Soạn bởi bộ môn Công nghệ phần mềm a b c d b c c a d III. MỘT SỐ LƯU Ý Khi bài toán cần sử dụng nhiều phép toán cần phải k ết hợp các phép toán sao cho h ạn chế dung lượng nhớ cho các kết quả trung gian. Khi bài toán có sử dụng các phép toán chiếu, chọn, kết nối nên thực hiện phép toán chiếu, chọn xuống dưới nhất (Gốc của cây đại số quan hệ) có thể được. B/ BÀI TẬP MẪU Bài số 1: Ví dụ về phép chọn trên quan hệ SV. Xét hồ sơ kết quả thi của sinh viên. Quan hệ này g ọi là SV. Gi ả s ử ta có quan h ệ SV như sau: TT Hoten namsinh CSDL FOX Tuấn Anh 1 1983 7 5 2 Huy Công 1982 8 3 Thanh Hương 3 1984 8 9 4 Bình Minh 1986 2 3 Giả sử, điều kiện E là sinh viên có ít nhất một đi ểm kém. V ậy SV(E), E = ( CSDL < 5 v Fox < 5). Khi đó kết quả SV(CSDL < 5 v Fox < 5): TT Hoten namsinh CSDL FOX 2 Huy Công 1982 8 3 4 Bình Minh 1986 2 3 Bài số 2: Cho CSDL gồm có ba quan hệ như sau: NCC(MaNCC, TenNCC, DCNCC, DT) SP(MaSP, TenSP, Loai) SP_NCC(MaNCC, MaSP, SL) Giải thích một số từ viết tắt: - MaNCC là mã số nhà cung cấp - TenNCC là tên nhà cung cấp có mã số tương ứng - DCNCC là địa chỉ của nhà cung cấp - DT là điện thoại nhà cung cấp MaSP là mã số sản phẩm - TenSP là tên của sản phẩm - Loại là chủng loại của mặt hàng - - SL là số lượng đã cung cấp - Quan hệ NCC ( nhà cung cấp ) dùng để l ưu trữ m ột s ố thông tin v ề các nhà cung cấp - Quan hệ SP ( sản phẩm ) dùng để lưu trữ một s ố thông tin của các m ặt hàng - Quan hệ SP_NCC dùng để lưu trữ một số thông tin về vi ệc cung ứng s ản ph ẩm c ủa NCC Trang 4
- NHẬP MÔN CSDL QUAN HỆ Soạn bởi bộ môn Công nghệ phần mềm Hãy viết biểu thức đại số quan hệ cho biết a) Cho biết tên của nhà cung cấp có địa chỉ là Hà Nôi b) Cho biết tên của các sản phẩm đã cung ứng bởi nhà cung cấp có mã s ố là HP. Hướng dẫn : - Với câu a) Ta cần chiếu để lấy tên nhà cung cấp k ết hợp v ới phép ch ọn v ới đi ều kiện chọn là 'Hà nội', các thông tin này lấy trong quan hệ NCC, ta thực hi ện nh ư sau: NCC(DCNCC='Hà nội')[TenNCC] - Với câu b) Các thông tin lấy trong 2 quan h ệ là SP và SP_NCC, v ới yêu c ầu này cần thực hiện 3 phép toán là kết nối, chọn, chiếu. Có thể 2 cách đ ể thực hi ện yêu c ầu này: +/ C1: Thực hiện phép toán kết nối 2 quan hệ SP, SP_NCC, phép ch ọn, phép chiếu. (SP * SP_NCC) (MaNCC = ‘HP’)[TenSP] +/ C2: Thực hiện phép chọn trên quan hệ SP_NCC, sau đó th ực hi ện phép kết nối giữa 2 quan hệ kết quả trên với quan hệ trung gian, cuối cùng là chi ếu l ấy tên các sản phẩm thoả mãn trên quan hệ cừa thu được. (SP - NCC(MaNCC=’HP’) * SP)[TenSP] C/ BÀI TẬP TỰ GIẢI Bài số 1: Cho 2 quan R và S như sau: R S A B C D A B C D 1 0 0 0 2 1 1 1 1 1 0 0 2 2 1 1 1 1 1 0 1 1 1 0 1 1 1 1 x y z v a. Tính R-S và S-S b. Tính R+S c. Tính R*S d. Giả sử X = {A, B, C}, Y={A, C, D}. tính các quan h ệ chi ếu r.X, r.Y và s.Y, (r+s).X, (r+s). (XUY) e. Chứng minh rằng với mọi quan hệ R, S, Q thì ta luôn có: R*S=S*R và R+S = S+R (Tính giao hoán) R*(Q+S) = (R*Q)+ (R*S) (Tính kết hợp) (R+S).X = R.X + S.X (R*S).X = R.X*S.X Bài số 2: Cho 2 quan hệ R và S như sau: R S A B C D A B C D 0 0 0 0 a b c d 0 0 1 1 x y z v 0 1 1 1 Tính R*S Bài số 3 Trang 5
- NHẬP MÔN CSDL QUAN HỆ Soạn bởi bộ môn Công nghệ phần mềm Cho 2 quan hệ R và S như sau: R S A B C D E A B 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 S) θ ( 0>1) Tính (R Bài số 4 Cho 2 quan r và s như sau: r s Điểm vào TT Tên NS GT Quê NH Nữ 1 Linh 77 HN Anh 18 Nữ 2 Quyên 76 HF Hoá 20 3 Nam 75 Nam SG Toán 22 Tuấn Tin học 4 74 Nam VF 22 Hãy dùng các thủ thuật nhỏ và sử dụng các phép toán quan hệ để có kết quả DS như sau: DS Điểm vào TT Tên NS GT Quê NH Nữ 1 Linh 77 HN Anh 18 Nữ 2 Quyên 76 HF Hoá 20 3 Nam 75 Nam SG Toán 22 Tuấn Tin học 22 4 74 Nam VF Bài số 5 Cho cơ sở dữ liệu gồm 3 quan hệ SV(MSV, HT, NS, QUE) ĐT(MĐT, TĐT, GV, KP) TT(MSV, MĐT, NTT, KQ) Trong đó : : Họ tên sinh viên MSV : Mã sinh viên HT NS : Năm sinh QUE : Quê quán MĐT : Mã đề tài : Tên đ ề tài TĐT GV : Giáo viên KP : Kinh phí NTT : Nơi thực tập : Kết quả KQ Hãy trả lời các câu hỏi sau dưới dạng biểu thức quan hệ : a. Cho biết tên của các giáo viên hướng dẫn sinh viên có quê ở Hà nội và có kết quả thực tập khá ( KQ ( 7) b. Cho biết tên của các sinh viên có kết quả thực t ập khá và th ực t ập t ại quê hoặc thực tập tại Quảng ninh. c. Cho biết tên của các giáo viên hướng dẫn sinh viên có quê ở Hà nội và thực tập đề tài có kinh phí lơn hơn 5 triệu d. Cho biết tên của các sinh viên có kết quả thực t ập khá và th ực t ập đề tài có kinh phí lớn hơn 4 triệu. e. Danh sach sinh viên thực tập tại quê nhà f. Thông tin về các đề tài có sinh viên thực tập g. Cho biết mã của các đề tài không có sinh viên nào tham gia Trang 6
- NHẬP MÔN CSDL QUAN HỆ Soạn bởi bộ môn Công nghệ phần mềm h. Cho biết mã của các đề tài có kinh phí nằm trong khoảng 1.5 đến 2 tri ệu i. Cho biết mã của sinh viên có tuổi nhỏ hơn 20 và k ết q ủa th ực t ập là khá ( KQ>7) Trang 7
![](images/graphics/blank.gif)
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài tập về môn cơ sở dữ liệu
7 p |
1265 |
399
-
Đề cương ôn tập môn Cơ sở dữ liệu
3 p |
1241 |
392
-
Bài tập về lý thuyết cơ sở dữ liệu
20 p |
585 |
238
-
Bài tập quan hệ đại số
7 p |
2328 |
187
-
Bài tập về đại số quan hệ
20 p |
301 |
62
-
Bài giảng Cơ sở dữ liệu - Chương 4: Đại số quan hệ
30 p |
301 |
45
-
Bài giảng môn Cơ sở dữ liệu: Chương 4 - ĐH KHTN
0 p |
188 |
35
-
Bài giảng Hệ quản trị cơ sở dữ liệu: Chương 5 - GV. Đặng Thị Kim Anh
32 p |
113 |
22
-
Bài giảng Tin học cơ sở: Bài 1 - Trần Thị Minh Châu
28 p |
110 |
11
-
Bài 4: Đại số quan hệ
6 p |
84 |
8
-
Bài giảng môn Cơ sở dữ liệu: Chương 4 - Đại số quan hệ
67 p |
108 |
8
-
Bài giảng Cơ sở dữ liệu: Chương 4 - GV. Đỗ Thị Kim Thành
36 p |
75 |
8
-
Bài giảng Cơ sở dữ liệu quan hệ: Chương 4 - ThS. Nguyễn Thị Tâm
60 p |
174 |
8
-
Bài giảng Cơ sở dữ liệu: Bài 4 - Trung tâm Athena
39 p |
103 |
5
-
Bài giảng Cơ sở dữ liệu: Bài 4 - ThS. Vũ Văn Định
28 p |
36 |
3
-
Bài giảng Lý thuyết cơ sở dữ liệu - Chương 4: Đại số quan hệ
43 p |
84 |
3
-
Bài giảng Cơ sở dữ liệu - Chương 7.5: Mô hình quan hệ - SQL cơ bản
35 p |
8 |
3
![](images/icons/closefanbox.gif)
![](images/icons/closefanbox.gif)
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn
![](https://tailieu.vn/static/b2013az/templates/version1/default/js/fancybox2/source/ajax_loader.gif)