Giáo trình Cơ sở dữ liệu - Cao Thị Nhạn (Phần 1)
Tóm tắt Giáo trình Cơ sở dữ liệu - Cao Thị Nhạn (Phần 1): ...ủa NSD mà có thể thấy tất cả hoặc một phần của CSDL. NSD hay chương trình ứng dụng có thể không được biết về cấu trúc tổ chức lưu trữ thông tin trong CSDL. Họ chỉ có thể làm việc trên một phần CSDL theo cách nhìn do người quản trị hay chương trình ứng dụng quy định, gọi là khung nhìn. Tran...ặc không. Chẳng hạn cùng là nhân viên trong nhà máy, thì công nhân trực tiếp tham gia sản xuất, nhân viên quản lý tham gia công tác quản lý. Ðối với nhân viên quản lý người ta quan tâm đến chức vụ, còn đối với nhân viên công nhân thì người ta lại quan tâm đến bậc. Ðể phản ánh tình Trang 26/1... tương ứng) Trong trường hợp này nếu như các thuộc tính không được liệt kê trong danh sách gán giá trị của bộ t trong câu lệnh INSERT sẽ nhận giá trị null. Nếu xem thứ tự của các thuộc tính là cố định và các giá trị nvvv ,...,, 21 là hoàn toàn tương ứng thì phép chèn có thể viết dưới dạng tư...
an hệ gồm tất cả các thuộc tính của thực thể và thuộc tính khĩa của thực thể cĩ sự tham gia (1, n). NHANVIEN (MaNV, HoTen, DiaChi, MaPhong) PHONGBAN (MaPhong, TenPhong) Mối kết hợp khác, chuyển thành một quan hệ với: • Thuộc tính là khác khĩa của các tập thực thể tham gia vào mối kết hợp và mọi thuộc tính của mối kết hợp • Khĩa là khĩa của các tập thực thể tham gia vào mối kết hợp và cĩ thể cĩ thêm thuộc tính của mối kết hợp THAMGIA (MaNV, MaDA, ThoiGian): Khĩa là khĩa của các tập thực thể tham gia vào mối kết hợp 3.4. Nhập tất cả các quan hệ cĩ cùng khĩa Sau khi thực hiện chuyển đổi, cĩ thể cĩ một số quan hệ cĩ cùng khĩa, khi đĩ thực hiện việc nhập tất cả các quan hệ cĩ cùng khĩa lại thành một quan hệ. Trang 40/109 Chương 4 Ngơn Ngữ Đại Số Quan Hệ Ngơn ngữ đại số quan hệ là ngơn ngữ phi thủ tục. Nĩ bao gồm tập hợp các phép tốn được áp dụng trên các thể hiện của quan hệ, kết quả của một câu truy vấn là một thể hiện của quan hệ. Ngơn ngữ đại số quan hệ cĩ ưu điểm trong việc thể hiện kế hoạch thực hiện câu truy vấn và các kỹ thuật tối ưu hĩa câu truy vấn. 1. Các phép tốn cơ sở 1.1. Các phép tốn tập hợp Các phép tốn cơ bản được áp dụng trên tập các bộ giá trị của các quan hệ, được hình thành từ lý thuyết tập hợp tốn học: hợp hay hội (union), hiệu (minus), giao (intersection), tích đề các (cartesian product operation), chia (division), bù (complement). Quan hệ kết quả của các phép tốn hợp, hiệu, trừ cĩ cùng tên thuộc tính với quan hệ đầu tiên (quy ước). Giả thiết: ( )nAAAR ,...,, 21 và ( )nBBBS ,...,, 21 Tính khả hợp Quan hệ ( )nAAAR ,...,, 21 và ( )nBBBS ,...,, 21 được gọi là khả hợp khi: • Số bậc của R và S là bằng nhau, nghĩa là cùng số lượng thuộc tính. • Miền giá trị của thuộc tính phải tương thích ( ) ( ) niBMGTAMGT ii ≤≤= 1, với 1.1.1. Phép hợp (union) Hợp (hay cịn gọi là hội) của hai quan hệ khả hợp R và S, ký hiệu SR∪ , là quan hệ Q được định nghĩa như sau: { }StRttSRQ ∈∨∈=∪= | Ví dụ: Trang 41/109 A B A B A B A1 b1 a1 b2 a1 b1 a1 b2 a2 b3 a1 b2 a2 b1 a2 b1 a2 b3 R S SR∪ Nĩi cách khác, hợp của hai quan hệ R và S là một quan hệ cĩ cùng ngơi với quan hệ R và S, với các bộ giá trị bằng gộp các bộ của cả R và S, những bộ giá trị trùng nhau chỉ giữ lại 1 bộ. Trong ví dụ trên bộ {a1, b2} xuất hiện trong cả R và S, do đĩ chỉ xuất hiện 1 lần trong SR∪ 1.1.2. Phép trừ (minus) Phép trừ (hay cịn gọi là hiệu) của hai quan hệ khả hợp R và S, ký hiệu SR − , là quan hệ Q được định nghĩa như sau: { }StRttSRQ ∉∧∈=−= | Ví dụ: A B A B A B a1 b1 a1 b2 a1 b1 a1 b2 a2 b3 a2 b1 a2 b1 R S SR − Nĩi cách khác, hợp của hai quan hệ R và S là một quan hệ cĩ cùng ngơi với quan hệ R và S, với các bộ giá trị là các bộ của cả R sau khi đã loại bỏ các bộ cĩ mặt trong S. 1.1.3. Phép giao (intersect) Giao của hai quan hệ khả hợp R và S, ký hiệu SR∩ , là quan hệ Q được định nghĩa như sau: { }StRttSRQ ∈∧∈=∩= | Trang 42/109 Ví dụ: A B A B A B a1 b1 a1 b2 a1 b2 a1 b2 a2 b3 a2 b1 R S SR∩ Nĩi cách khác, giao của hai quan hệ R và S là một quan hệ cĩ cùng ngơi với quan hệ R và S, với các bộ giá trị là các bộ giống nhau trong cả R và S. 1.1.4. Phép tích đề các (Cartesian Product Operation) Giả thiết: ( )nAAAR ,...,, 21 và ( )mBBBS ,...,, 21 Phép tích đề các của hai quan hệ của hai quan hệ R và S, ký hiệu RxS , là quan hệ Q được định nghĩa như sau: { }SqRttqRxSQ ∈∧∈== | Ví dụ: A B C D A B C D a1 b1 c1 d2 a1 b1 c1 d2 a1 b2 c2 d3 a1 b1 c2 d3 a2 b1 a1 b2 c1 d2 a1 b2 c2 d3 a2 b1 c1 d2 a2 b1 c2 d3 R S RxS Vậy tích đề các của hai quan hệ R và S là một quan hệ gồm (n+m) ngơi với n thuộc tính đầu là một bộ của R và m thuộc tính sau là một bộ thuộc S. 1.1.5. Phép chia (division) Trang 43/109 Giả thiết: ( )nAAAR ,...,, 21 và ( )mBBBS ,...,, 21 ( ∅≠> Smn , ), cĩ m thuộc tính chung. Khi đĩ phép chia trên 2 quan hệ R và S, ký hiệu SR ÷ , là quan hệ Q cĩ (n-m) ngơi được định nghĩa như sau: ( ){ }RutSutSRQ ∈∈∀=÷= ,,| Ví dụ 1: A B C D C D A B a1 b1 c1 d1 C1 d1 a1 b1 a1 b1 c2 d3 C2 d3 a2 b1 a2 b1 c2 d3 a2 b1 c1 d1 a3 b1 c1 d3 R S SR ÷ Nĩi cách khác, phép chia của quan hệ R cho S đưa ra tất cả các bộ trong quan hệ R, sao cho khớp với tất cả các bộ trong quan hệ S 1.2. Các phép tốn quan hệ Phần này trình bày các phép tốn trên quan hệ và ví dụ minh họa dựa trên lược đồ cơ sở dữ liệu Quản lý đề án: NHANVIEN (MaNV, HoNV, tenNV, NgaySinh, DiaChi, Phai, Luong, MaNQL, Phong) Tân từ: Mỗi nhân viên cĩ Mã nhân viên (MaNV) duy nhất để phân biệt với các nhân viên khác, cĩ họ tên (HoNV, TenNV), ngày sinh (NgaySinh), địa chỉ (DiaChi), phái Nam hoặc Nữ (Phai), mức lương (Luong), người quản lý trực tiếp (MaNQL) và thuộc về một phịng ban (Phong) PHONGBAN (MaPhong, TenPhong, TruongPhong, NgayNhanChuc) Tân từ: Mỗi một phịng ban cĩ một mã phịng duy nhất (MaPhong) để phân biệt với các phịng ban khác, cĩ tên phịng (TenPhong), người trưởng phịng (TruongPhong), và ngày nhận chức của trưởng phịng (NgayNhanChuc) DIADIEMPHONG (MaPhong, DiaDiem) Trang 44/109 Tân từ: Mỗi một phịng ban (MaPhong) cĩ thể cĩ nhiều địa điểm làm việc khác nhau (DiaDiem) DEAN (MaDA, TenDA, DdiemDA, Phong) Tân từ: Mỗi một đề án cĩ một mã đề án duy nhất (MaDA) để phân biệt với các đề án khác, cĩ tên đề án (TenDA), địa điểm thực hiện (DdiemDA), và do một phịng ban chủ trì đề án đĩ (Phong) PHANCONG (MaNV, MaDA, ThoiGian) Tân từ: Mỗi một nhân viên (MaNV) được phân cơng tham gia đề án (MaDA) dưới dạng tham gia số giờ trên 1 tuần (ThoiGian) THANNHAN(MaTN, HoTN, TenTN, Phai, NgaySinh) Tân từ: Mỗi thân nhân cĩ Mã thân nhân (MaTN) duy nhất để phân biệt với các thân nhân khác, cĩ họ tên (HoTN, TenTN), phái (Phai) ngày sinh (NgaySinh) NVIEN_TNHAN(MaNV, MaTN, QuanHe) Tân từ: Mỗi nhân viên (MaNV) cĩ thể cĩ nhiều thân nhân (MaTN), được diễn giải bởi quan hệ (QuanHe) như vợ, chồng, con, anh em 1.2.1. Phép chọn (selection) Cho phép chọn ra những bộ trong R thỏa mãn biểu thức điều kiện chọn P cho trước. Ký hiệu là )(RPσ với định nghĩa: { })(|)( tPRttRP ∧∈=σ với R là quan hệ được chọn, P là biểu thức logic chứa các phép so sánh ( ,..,,, =≤≥≠ ), các phép tốn logic ( ¬∨∧ ,, ) dạng: hay Như vậy kết quả của phép chọn là một quan hệ cĩ cùng danh sách thuộc tính với quan hệ R. Ví dụ: • Chọn những nhân viên cĩ lương >= 500000 ( )NHANVIENLuong 500000≥σ • Cho biết những nhân viên thuộc phịng số 5 và cĩ lương >= 500000 Trang 45/109 ( )NHANVIENPhongLuong 5500000 =∧≥σ 1.2.2. Phép chiếu (projection) Cho phép trích chọn ra những cột (thuộc tính) trong R chỉ ra trong danh sách thuộc tính. Ký hiệu là )(,...,, 21 RkAAAπ với nAAA ,..,, 21 là danh sách các thuộc tính cần chọn và R là quan hệ cần trích chọn. Nhận thấy rằng số lượng các bộ kết quả luơn nhỏ hơn hoặc bằng số lượng các bộ trong R. Các bộ trùng nhau sẽ loại đi và chỉ giữ lại bộ. Ví dụ: • Cho biết mã nhân viên, họ tên của tất cả các nhân viên ( )NHANVIENTenNVHoNVMaNV ,,π • Cho biết mã nhân viên, họ tên, phịng làm việc và mức lương của tất cả các nhân viên ( )NHANVIENLuongPhongTenNVHoNVMaNV ,,,,π • Cho biết các đề án cùng với các phịng phụ trách đề án đĩ ( )DEANPhongTenDAMaDA ,,π 1.2.3. Phép gán (assignment) Khi gặp những truy vấn phức tạp, phép gán cho phép diễn tả một cách rõ ràng hơn câu truy vấn. Khi đĩ, câu truy vấn chính là một chuỗi các phép gán theo sau đĩ là một biểu thức cĩ giá trị như là kết quả của câu truy vấn. Ký hiệu: Å Việc gán được thực hiện cho một biến quan hệ tạm và được sử dụng cho các biểu thức theo sau. 1.2.4. Phép đổi tên: Vì cho phép đặt tên nên cĩ thể tham chiếu tới kết quả của biểu thức đại số quan hệ, và cho phép tham chiếu tới một quan hệ bằng nhiều tên Các phép đổi tên sau: Trang 46/109 • Đổi tên quan hệ và tên thuộc tính: Cho biểu thức đại số quan hệ E cĩ n thuộc tính, biểu thức ( ) )(,...,,,1 EnAAAλρ trả về kết quả biểu thức E dưới tên λ và các tên của thuộc tính đổi thành nAAA ,...,, 21 • Đổi tên quan hệ: Cho biểu thức đại số quan hệ E, biểu thức )(Eλρ trả về kết quả biểu thức E dưới tên λ • Đổi tên thuộc tính: Cho biểu thức đại số quan hệ E cĩ n thuộc tính, biểu thức ( ) )(,...,,,1 EnAAAρ trả về kết quả biểu thức E với các tên của thuộc tính đổi thành nAAA ,...,, 21 1.2.5. Chuỗi các phép tốn Kết hợp các phép tốn đại số quan hệ với nhau để tạo ra một quan hệ kết quả theo yêu cầu. Cĩ nhiều cách để thể hiện một truy vấn cho trước. Ví dụ: Cho biết mã nhân viên, họ tên cùng lương của nhân viên làm việc trong phịng số 4 • Cách 1: ( )( )NHANVIENPhongLuongTenNVHoNVMaNV 4,,, =σπ • Cách 2: ( ) ( )4_ 4_ ,,, 4 PNVIENKQ NHANVIENPNVIEN LuongTenNVHoNVMaNV Phong π σ ← ← = • Cách 3: ( ) ( ) ( )4_,,, 4_ ,,, 4 PNVIENLuongNVTenNVHoNVMaNVKQ NHANVIENPNVIEN LuongTenNVHoNVMaNV Phong π σ ← ← = Trong đĩ cĩ sử dụng phép gán và phép đặt lại tên. 2. Các phép tốn khác 2.1. Phép kết hai quan hệ Giả thiết: ( )nAAAR ,...,, 21 và ( )mBBBS ,...,, 21 , việc ghép bộ Raaat n ∈= ),...,,( 21 vào Sbbbv m ∈= ),...,,( 21 được định nghĩa như sau: +∈ RA và +∈ SB là hai thuộc tính cĩ thể so sánh được. Trang 47/109 Gọi θ là một trong các phép so sánh { }≠≤≥=>< ,,,,, Khi đĩ, phép kết nối hai quan hệ R và S trên các thuộc tính A, B với phép so sánh θ được định nghĩa: R S = ( ){ }BuAtSuRtutv ..,,|, θ∈∈= Cĩ thể nhận thấy rằng phép kết nối được thực hiện qua 2 bước: (1) tích đề các hai quan hệ R và S, (2) chọn các bộ thỏa điều kiện AθB. Nếu θ là phép tốn so sánh bằng nhau được gọi là phép kết nối bằng (equi join). Nếu các thuộc tính so sánh là giống tên nhau thì trong kết quả của phép nốisẽ loại đi một cột (thuộc tính), khi đĩ phép kết được gọi là phép kết tự nhiên (natural join) và về mặt ký hiệu bỏ đi AθB. Các trường hợp cịn lại được gọi là phép kết nối theta (θ join) Ví dụ: A B C C D E A B C C D E a1 1 1 1 d1 e1 a1 1 1 1 d1 E1 a2 2 1 2 d2 e2 a2 2 1 1 d1 E1 a3 2 2 3 d3 e3 A2 2 1 2 D2 E2 A3 2 2 1 d1 E1 a3 2 2 2 d2 E2 R S R S Và kết quả của phép nối tự nhiên (kết bằng trên thụơc tính C) là A B C D E a1 1 1 d1 e1 a2 2 1 d1 e1 a3 2 2 d2 e2 AθB R.B≥S.C Trang 48/109 2.2. Phép kết nối nội (inner join) Thực chất của phép kết nối nội là phép kết nối bằng đã nêu trên. Tuy nhiên, ngay cả khi hai thuộc tính cĩ cùng tên thì kết quả vẫn giữ lại 2 tên thuộc tính đĩ. Ví dụ: A B C A D E A B C A D E a1 B 1 c1 a1 d1 e1 a1 b1 c1 a1 d1 E 1 a2 B 2 c1 a2 d2 e2 a2 b2 c1 a2 d2 E 2 a3 B 3 c2 a4 d4 e4 a7 b7 c7 a7 d7 E 7 a5 B 5 c5 a6 d6 e6 a7 B 7 c7 a7 d7 e7 R S R S 2.3. Phép kết nối trái (left join) Phép kết nối trái hai quan hệ R và S trên các thuộc tính A và B với phép so sánh bằng được định nghĩa là tất cả các bộ v đạt được bằng cách xếp bộ giá trị của R và S cạnh nhau, nếu cĩ giá trị giống nhau trên hai thuộc tính kết nối; và các bộ v đạt được nhờ cách đặt bộ R với các bộ null của S, nếu khơng tìm được giá trị tương ứng của thuộc tính kết nối trên quan hệ S. R S = ( ) ( ) [ ]( ){ }BSAtuuRtBuAtSuRtutv null ∉=∈∨∈∈= .:,..:,|, θ Với S[B] là tập tất cả các giá trị của thuộc tính B của S Ví dụ: R.A=S. A R.A=S.B Trang 49/109 R.A=S.A A B C A D E A B C A D E a1 b1 c1 a1 d1 e1 a1 b1 c1 a1 d1 e1 a2 b2 c1 a2 d2 e2 a2 b2 c1 a2 d2 e2 a3 b3 c2 a4 d4 e4 a3 b3 c2 null null null a5 b5 c5 a6 d6 e6 a5 b5 c5 null null null a7 b7 c7 a7 d7 e7 a7 b7 c7 a7 d7 e7 R S R S Ý nghĩa của phép kết nối này là xác định được các bộ giá trị của quan hệ bên trái nhưng khơng cĩ bộ giá trị tương ứng trong quan hệ bên phải. 2.4. Phép kết nối phải (right join) Phép kết nối phải hai quan hệ R và S trên các thuộc tính A và B với phép so sánh bằng được định nghĩa là tất cả các bộ v đạt được bằng cách xếp bộ giá trị của R và S cạnh nhau, nếu cĩ giá trị giống nhau trên hai thuộc tính kết nối; và các bộ v đạt được nhờ cách đặt bộ null của R với các bộ của S, nếu khơng tìm được giá trị tương ứng của thuộc tính kết nối trên quan hệ R. R S = ( ) ( ) [ ]( ){ }ARBuSuttBuAtSuRtutv null ∉∈=∨∈∈= .:,,..:,|, θ Với R[A] là tập tất cả các giá trị của thuộc tính A của R Ví dụ: A B C A D E A B C A D E a1 b1 c1 a1 d1 e1 a1 b1 c1 a1 d1 e1 a2 b2 c1 a2 d2 e2 a2 b2 c1 a2 d2 e2 a3 b3 c2 a4 d4 e4 null null Null a4 d4 e4 a5 b5 c5 a6 d6 e6 null null Null a6 d6 e6 a7 b7 c7 a7 d7 e7 a7 b7 c7 a7 d7 e7 R S R S R.A=S.B R.A=S.A Trang 50/109 Ý nghĩa của phép kết nối này là xác định được các bộ giá trị của quan hệ bên phải nhưng khơng cĩ bộ giá trị tương ứng trong quan hệ bên trái. Chú ý rằng trong một số ngơn ngữ truy vấn CSDL, người ta gọi hai phép kết nối trái và phải chung lại là phép kết nối ngồi (outer join) vì cho phép giữ lại tất cả các bộ của hai quan hệ khơng tìm được bộ giá trị giống nhau trên các thuộc tính kết nối. 2.5. Hàm kết hợp và gom nhĩm Dùng để tính tốn các giá trị mang tính chất tổng hợp trong đại số quan hệ. Trong đĩ: Hàm kết hợp: đầu vào là một tập giá trị và trả về một giá trị đơn • Avg(): giá trị trung bình • Min(): giá trị nhỏ nhất • Max(): giá trị lớn nhất • Sum(): tính tổng • Count(): đếm số mẫu tin Gom nhĩm: cơng thức như sau: )()(),...,2(2),1(1,.., 21 EAnFnAFAFGGG N ℑ , với: • E là biểu thức đại số quan hệ • Gi là tên thuộc tính gom nhĩm (cĩ thể khơng cĩ) • Fi là hàm gom nhĩm • Ai là tên thuộc tính tính tốn trong hàm gom nhĩm Ví dụ: • Cho biết số nhân viên trong cơng ty và mức lương trung bình )()(),( NHANVIENLuongAVGMaNVCOUNTℑ • Cho biết số lượng nhân viên và lương trung bình của mỗi phịng ban )()(),( NHANVIENLuongAVGMaNVCOUNTPhong ℑ 2.6. Các phép tốn cập nhật trên quan hệ Các thao tác được viết thơng qua phép tốn gán. Cụ thể như sau: Trang 51/109 2.6.1. Thêm Phép thêm: Err ∪← , với r là một quan hệ và E là một biểu thức đại số quan hệ. Thơng thường, đưa ra bộ cần chèn một cách tường minh hoặc viết một câu truy vấn mà kết quả truy vấn chính là một tập các bộ cần chèn. Ví dụ: Chèn một bộ tường minh }4,','','01{' Trọng' Đức họctin cập PhổDADEANDEAN ∪← 2.6.2. Xĩa Phép xố: : Err −← , với r là một quan hệ và E là một biểu thức đại số quan hệ. Chú ý rằng phép xĩa thực hiện xĩa một hoặc nhiều bộ mà khơng thể xĩa đi giá trị của các thuộc tính. Ví dụ: • Xĩa tất cả các phân cơng cơng tác tham gia đề án của nhân viên mang mã số NV01 ( )( )NHANVIENPHANCONGPHANCONG NVMaNV '01'=−← σ • Xĩa tất cả các đề án do phịng mang tên ‘Quản Lý’ chủ trì ( )( ) 2 )1(2 1 ,,, '' rDEANDEAN rr DEANPHONGBANr PhongDDiemDATenDAMaDA QuanLýTenPhong −← ← ← == π σ PhongMaPhong>< 2.6.3. Sửa Phép sửa: )(,...,2,1 rr FnFFπ← , với: • Fi là một biểu thức, gồm hằng và thuộc tính của r để đưa ra giá trị mới cho thuộc tính này. • Mỗi Fi cĩ giá trị trả về là giá trị mới cho thuộc tính thứ i của r, thuộc tính này cĩ thể được giữ nguyên hoặc cập nhật với giá trị mới. Phép sửa cĩ thể được viết thơng qua phép xĩa và thêm. Khi đĩ, phép xĩa sẽ xĩa đi các bộ chứa giá trị cũ và phép thêm sẽ thêm những bộ chứa giá trị mới. Ví dụ: • Cộng thêm lương mỗi nhân viên với số tiền là 120000 ( )( )NHANVIENNHANVIEN PhongMaNQLLuongPhaiDiaChiNgaySinhTenNVHoNVMaNV ,,120000,,,,,, +← π Trang 52/109 • Với nhân viên nam, cộng thêm lương với số tiền là 100000; với nhân viên nữ, cộng thêm lương với số tiền là 150000 ( )( )( ) ( )( )( )NHANVIEN NHANVIENNHANVIEN NuPhaiPhongMaNQLLuongPhaiDiaChiNgaySinhTenNVHoNVMaNV NamPhaiPhongMaNQLLuongPhaiDiaChiNgaySinhTenNVHoNVMaNV '',,150000,,,,,, '',,100000,,,,,, =+ =+ ∪ ← σπ σπ 3. Bài tập Bài 1: Với lược đồ cơ sở dữ liệu Quản lý đề án trong 2.2. Hãy viết các biểu thức đại số quan hệ theo yêu cầu: 1. Cho biết thơng tin cá nhân về những nhân viên cĩ tên ‘Mai’ 2. Tìm mã nhân viên, họ tên và địa chỉ của tất cả nhân viên làm việc phịng ‘Hành Chính’ 3. Tìm mã nhân viên, họ tên và địa chỉ của tất cả nhân viên làm việc phịng ‘Hành Chính’ và ‘Tài Vụ’ 4. Cho biết mã nhân viên , họ tên nhân viên và tên các đề án mà nhân viên tham gia. 5. Tìm mã đề án, tên đề án, tên phịng ban chủ trì đề án cùng mã trưởng phịng, tên trưởng phịng đĩ. 6. Cho biết mã nhân viên, họ tên của những nhân viên tham gia vào đề án cĩ mã là ‘DA01’ và cĩ thời gian làm việc cho đề án trên 30giờ/tuần 7. Cho biết mã nhân viên, họ tên của những nhân viên cĩ cùng tên với người thân. 8. Cho biết mã nhân viên, họ tên của những nhân viên cĩ người trưởng phịng cĩ họ tên là ‘Nguyễn’ ‘Mai’ 9. Cho biết mã nhân viên, họ tên của những nhân viên cĩ người quản lý cĩ họ tên là ‘Nguyễn’ ‘Mai’ 10. Cho biết mã nhân viên, họ tên của những nhân viên tham gia mọi đề án của cơng ty. 11. Cho biết mã nhân viên, họ tên của những nhân viên khơng tham gia đề án nào của cơng ty. Trang 53/109 12. Cho biết mức lương trung bình của nhân viên trong cơng ty. 13. Cho biết mức lương trung bình của nhân viên nam trong cơng ty. 14. Cho biết tổng số đề án của cơng ty. 15. Với mỗi đề án, cho biết tổng số nhân viên tham gia vào đề án. 16. Với mỗi đề án, cho biết tổng số nhân viên nữ tham gia vào đề án. 17. Tăng thời gian tham gia đề án của các nhân viên nam thêm 4giờ/tuần 18. Xĩa tất cả những nhân viên cĩ mức lương dưới 500000 Bài 2: Cho lược đồ CSDL Quản lý sinh viên sau: SINHVIEN (MaSV, HoSV, TenSV, NgaySinh, DiaChi, Phai, Nam, Khoa) Tân từ: Mỗi sinh viên cĩ Mã sinh viên (MaSV) duy nhất để phân biệt với các sinh viên khác, cĩ họ tên (HoSV, TenSV), ngày sinh (NgaySinh), địa chỉ (DiaChi), phái Nam hoặc Nữ (Phai), năm nhập học (Nam) và thuộc về một khoa (Khoa) GIANGVIEN (MaGV, HoGV, TenGV, NgaySinh, DiaChi, Phai, ChuyenNganh, Khoa) Tân từ: Mỗi giảng viên cĩ Mã giảng viên (MaGV) duy nhất để phân biệt với các giảng viên khác, cĩ họ tên (HoGV, TenGV), ngày sinh (NgaySinh), địa chỉ (DiaChi), phái Nam hoặc Nữ (Phai), chuyên ngành (ChuyenNganh) và thuộc về một khoa (Khoa) MONHOC (MaMH, TenMH, STC, Loai, Khoa) Tân từ: Mỗi mơn học cĩ mã mơn học (MaMH) duy nhất để phân biệt với các mơn học khác, cĩ tên mơn học (TenMH), số tín chỉ (STC), là loại bắt buộc hay tự chọn (Loai), và do một khoa (Khoa) chịu trách nhiệm giảng dạy. DIEUKIEN (MaMH, MaMHTruoc) Tân từ: Một số mơn học cĩ điều kiện tiên quyết, sinh viên muốn học mơn học (MaMH) thì phải đạt được mơn tiên quyết của mơn học này (MaMHTruoc) KHOAHOC (MaKH, MaMH, HocKy, NamHoc, MaGV) Tân từ: Một mơn học (MaMH) được tổ chức trong học kỳ (HocKy) của một năm học (NamHoc) và do một giảng viên chịu trách nhiệm giảng dạy (MaGV). Lưu ý rằng một mơn học cĩ thể được mở nhiều lần (chẳng hạn năm học 2007-2008 mở cho khố CTK29, năm học 2008-2009 mở cho khố CTK30). Trong quan hệ này, mã khố học (MaKH) thể hiện việc một lần tổ chức giảng dạy mơn học. Trang 54/109 KETQUA (MaSV, MaKH, Diem, KetQua) Tân từ: Khi sinh viên (MaSV) tham gia học mơn học tại một khố học (MaKH) sẽ cĩ điểm đánh giá (Diem) của học viên, từ điểm đánh giá sẽ cĩ kết quả (KetQua) đạt hay khơng đạt. Hãy viết các biểu thức đại số quan hệ theo yêu cầu: 1. Cho biết mã sinh viên, họ tên của mọi sinh viên 2. Cho biết mã mơn học, tên mơn học và số tín chỉ tương ứng 3. Cho biết mã mơn học, tên mơn học phải học trước mơn cĩ mã là ‘CT101’ 4. Cho biết mã sinh viên, họ tên sinh viên cùng với các mơn học mà sinh viên đạt trên 5 điểm. 5. Cho biết mã sinh viên, họ tên sinh viên học tất cả các khĩa học. 6. Cho biết tổng số sinh viên của mỗi khoa. 7. Cho biết mã sinh viên, họ tên sinh viên đạt điểm cao nhất trong mỗi khĩa học 8. Cho biết mã sinh viên, họ tên sinh viên và điểm trung bình của sinh viên trong từng học kỳ của từng niên học 9. Cho biết mã giáo viên, họ tên giáo viên và chuyên ngành của những giáo viên tham gia dạy năm 2004-2005 10. Tăng số tín chỉ cho những mơn học được học trong học kỳ 1, năm 2004-2005 11. Từ điểm của sinh viên, hãy điền vào cột KetQua thỏa: nếu điểm>=5: đạt, ngược lại: khơng đạt.
File đính kèm:
- giao_trinh_co_so_du_lieu_cao_thi_nhan_phan_1.pdf