Giáo trình Cơ sở dữ liệu (Bản đẹp)

Giới thiệu:

Chương này trình bày các khái niệm về Cơ sở dữ liệu, hệ quản trị CSDL, người

dùng; giới thiệu các đặc tính, quá trình phát triển của Cơ sở dữ liệu; khái niệm mô

hình, lược đồ và thể hiện Cơ sở dữ liệu. Trình bày quá trình thiết kế CSDL; khái niệm

mô hình thực thể kết hợp, thực thể, thuộc tính, loại thực thể, khóa, mối kết hợp, cách

thiết kế mô hình thực thể kết hợp. Giới thiệu khái niệm mô hình dữ liệu quan hệ, các

đặc trưng của quan hệ, cách chuyển mô hình thực thể kết hợp sang mô hình quan hệ.

Bài tập.

Mục tiêu:

Phát biểu được các khái niệm và trình bày được các đặc trính về CSDL. Phân

biệt các thành phần trong CSDL, các mô hình, trình bày được hệ thống ký hiệu trong

mô hình thực thể kết hợp . Chuyển được mô hình thực thể kết hợp sang mô hình quan

hệ. Thiết kế được mô hình thực thể kết hợp từ tài liệu mô tả tình huống đơn giản.

Nội dung chính:

1. Khái niệm

1.1 Dữ liệu

Là các thông tin của đối tượng (người, vật, một khái niệm, sự việc ) được lưu

trữ trên máy tính. Dữ liệu được mô tả dưới nhiều dạng khác nhau (các ký tự, ký số,

hình ảnh, ký hiệu, âm thanh ). Mỗi cách mô tả gắn với một ngữ nghĩa nào đó.

Dữ liệu về đối tượng có thể khác nhau, tùy thuộc vào ngữ cảnh.

Ví dụ: dữ liệu về đối tượng sinh viên có thể khác nhau tùy vào mục đích quản

lý: quản lý điểm: Tên, mã sinh viên, điểm môn 1, điểm môn 2, điểm môn 3. Trong khi

đó quản lý nhân thân: Tên, địa chỉ, ngày sinh, quê quán, lớp.

1.2 Cơ sở dữ liệu ( Database)

Cơ sở dữ liệu (CSDL) là tập hợp dữ liệu được tổ chức có cấu trúc liên quan với

nhau và được lưu trữ trong máy tính.

CSDL được thiết kế, xây dựng cho phép người dùng lưu trữ dữ liệu, truy xuất thông

tin hoặc cập nhật dữ liệu.

CSDL được tổ chức có cấu trúc: Các dữ liệu được lưu trữ có cấu trúc thành các

bản ghi (record), các trường dữ liệu (field). Các dữ liệu lưu trữ có mối quan hệ

(relation) với nhau

CSDL được cấu trúc để dễ dàng truy cập, quản lý và cập nhật.

Giáo trình Cơ sở dữ liệu (Bản đẹp) trang 1

Trang 1

Giáo trình Cơ sở dữ liệu (Bản đẹp) trang 2

Trang 2

Giáo trình Cơ sở dữ liệu (Bản đẹp) trang 3

Trang 3

Giáo trình Cơ sở dữ liệu (Bản đẹp) trang 4

Trang 4

Giáo trình Cơ sở dữ liệu (Bản đẹp) trang 5

Trang 5

Giáo trình Cơ sở dữ liệu (Bản đẹp) trang 6

Trang 6

Giáo trình Cơ sở dữ liệu (Bản đẹp) trang 7

Trang 7

Giáo trình Cơ sở dữ liệu (Bản đẹp) trang 8

Trang 8

Giáo trình Cơ sở dữ liệu (Bản đẹp) trang 9

Trang 9

Giáo trình Cơ sở dữ liệu (Bản đẹp) trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 72 trang xuanhieu 7980
Bạn đang xem 10 trang mẫu của tài liệu "Giáo trình Cơ sở dữ liệu (Bản đẹp)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Giáo trình Cơ sở dữ liệu (Bản đẹp)

Giáo trình Cơ sở dữ liệu (Bản đẹp)
 các quan hệ xuất hiện sau FROM 
Một câu vấn tin kiểu mẫu có dạng: 
 SELECT A1, A2, ..., Ak 
 FROM R1, R2, ..., Rm 
 WHERE P 
 trong đó Ai là các thuộc tính, Rj là các quan hệ và P là một vị từ. Nếu thiếu 
WHERE vị từ P là TRUE. 
 Kết quả của một câu vấn tin SQL là một quan hệ. 
 3.1 Câu truy vấn tổng quát 
Cú pháp 
SELECT 
FROM 
[ WHERE ] 
[ GROUP BY ] 
[ HAVING ] 
[ ORDER BY ] 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 53 
3.1.1 Truy vấn chiếu 
Cú pháp 
SELECT DANH SÁCH CÁC CỘT 
FROM TÊN BẢNG 
Ví dụ: Cho lƣợc đồ CSDL quản lý lớp học sau: 
HOCSINH ( MAHS, HOTEN, NGAYSINH, NOISINH, MALH) 
LOPHOC ( MALH, TENLH, CAHOC,SISO) 
MONHOC ( MAMH, TENMH, SOTIET) 
BANGDIEM ( MAHS, MAMH, DIEM) 
Lấy ra Mamh, Tenmh từ bảng Monhoc 
Select Mamh, Tenmh 
From Monhoc 
3.1.2 Truy vấn chọn 
Cú pháp 
SELECT Liệt kê các thuộc tính cần hiển thị trong kết quả 
WHERE Tƣơng ứng với điều kiện chọn liên quan tới thuộc tính, sử dụng 
các toán tử truy vấn 
FROM Liệt kê các quan hệ cần thiết, các phép kết 
Các toán tử truy vấn 
 Toán tử so sánh: =, >,=, 
 Toán tử logic: AND, OR, NOT 
 Phép toán: +, ,* , / 
 BETWEEN . AND 
 IS NULL, IS NOT NULL 
 LIKE (_ %) 
 IN, NOT IN 
 EXISTS , NOT EXISTS 
 Toán tử LIKE : so sánh chuỗi tƣơng đối 
 Cú pháp: s LIKE p, p có thể chứa % hoặc _ 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 54 
% : thay thế một chuỗi ký tự bất kỳ 
_ : thay thế một ký tự bất kỳ 
 Ví dụ: Cho lƣợc đồ CSDL quản lý bán hàng 
KHACHHANG (MAKH, HOTEN, DCHI, SODT, NGSINH, DOANHSO, 
NGDK, CMND) 
NHANVIEN (MANV, HOTEN, NGVL, SODT) 
SANPHAM (MASP,TENSP, DVT, NUOCSX, GIA) 
HOADON (SOHD, NGHD, MAKH, MANV, TRIGIA) 
CTHD (SOHD,MASP, SL) 
a. Tìm MASP, TENSP do “Trung Quoc” sản xuất có giá từ 20000 đến 30000 
 Select MASP,TENSP 
 From SANPHAM 
 Where NUOCSX=„Trung Quoc‟ 
 And GIA Between 20000 And 30000 
b. Tìm những sản phẩm có mã bắt đầu là chữ “B” 
 Select MASP, TENSP 
From SANPHAM 
Where MASP like 'B%„ 
3.1.2 Truy vấn kết ( Inner Join) : Đây là mệnh đề truy vấn với kết quả trả về là tập 
hợp các dữ liệu thỏa mãn điều kiện chung từ hai bảng. Truy vấn này so sánh mỗi hàng 
trong bảng 1 với mỗi hàng trong bảng để tìm ra các cặp hàng thỏa mãn điều kiện. 
Cú pháp 
Select Liệt kê các thuộc tính cần hiển thị trong kết quả 
From Bảng 1 INNER JOIN Bảng 2 
 On Bảng 1.Cột chung = Bảng 2.Cột chung 
Ví dụ: Cho lƣợc đồ CSDL quản lý bán hàng 
KHACHHANG (MAKH, HOTEN, DCHI, SODT, NGSINH, DOANHSO, 
NGDK, CMND) 
NHANVIEN (MANV, HOTEN, NGVL, SODT) 
SANPHAM (MASP,TENSP, DVT, NUOCSX, GIA) 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 55 
HOADON (SOHD, NGHD, MAKH, MANV, TRIGIA) 
CTHD (SOHD,MASP, SL) 
In ra danh sách các khách hàng (MAKH, HOTEN) đã mua hàng trong ngày 1/1/2020. 
Select KHACHHANG.MAKH,HOTEN 
From KHACHHANG inner join HOADON 
On KHACHHANG.MAKH=HOADON.MAKH 
Where NGHD='1/1/2020' 
3.1.3 Đặt bí danh, *, distinct, order by 
Đặt bí danh – Alias: cho thuộc tính và quan hệ: tên_cũ AS tên_mới 
Ví dụ: Cho lƣợc đồ CSDL quản lý bán hàng nhƣ trên 
a. Liệt kê mã nhân viên, họ và tên nhân viên 
Select MANV, HOTEN as [ho va ten] From NHANVIEN 
b. Liệt kê tất cả các thuộc tính của quan hệ: 
Select * from Nhanvien 
Select NHANVIEN.* from NHANVIEN 
Distinct: trùng chỉ lấy một lần 
Ví dụ: Cho lƣợc đồ CSDL quản lý bán hàng nhƣ trên. Liệt kê các nƣớc sản xuất. 
Select distinct Nuocsx 
From SANPHAM 
Sắp xếp kết quả hiển thị ( Order by): 
- ASC kết quả đƣợc sắp xếp theo thứ tự tăng dần. 
- DESC kết quả đƣợc sắp xếp theo thứ tự giảm dần 
Ví dụ: Cho lƣợc đồ CSDL quản lý bán hàng nhƣ trên. Liệt kê các sản phẩm, sắp xếp 
giảm dần theo nƣớc sản xuất và giá. 
Select * 
From SANPHAM 
Order by NUOCSX, GIA DESC 
3.1.4 Mệnh đề In và Not In 
Mệnh đề In đƣợc dùng trong SQL Server để giảm thiểu việc phải sử dụng quá 
nhiều điều kiện OR trong các lệnh SELECT, INSERT, UPDATE hoặc DELETE. 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 56 
Ví dụ dùng mệnh đề In 
Cho lƣợc đồ CSDL quản lý lớp học sau: 
HOCSINH ( MAHS,HO,TEN, NGAYSINH,NOISINH,MALH) 
LOPHOC ( MALH,TENLH,CAHOC,SISO) 
MONHOC ( MAMH,TENMH,SOTIET) 
BANGDIEM ( MAHS,MAMH,DIEM) 
Select * 
From HOCSINH 
 Where HO In (N„Nguyễn‟,N „Lê‟, N„Trần‟); 
Kết quả trả về sẽ là các hàng từ bảng HOCSINH nếu họ của học sinh là 
Nguyễn, Lê hoặc Trần. Do dùng * trong lệnh SELECT nên tất cả các trƣờng thông tin 
trong bảng HOCSINH sẽ nằm trong bộ kết quả. 
Ví dụ trên đây cũng tƣơng tự nhƣ lệnh SELECT dƣới đây. 
Select * 
From HOCSINH 
Where HO = „Nguyễn‟ 
Or HO = „Lê‟ 
Or HO = „Trần‟; 
Việc dùng điều kiện IN giúp lệnh trông ngắn gọn, dễ hiểu hơn. 
Ví dụ dùng mệnh đề NOT 
Select * 
From HOCSINH 
Where TEN Not In (N„Mai‟,N „Lan‟, N„Cúc‟); 
Ở ví dụ trên, bộ kết quả gồm các hàng từ bảng HOCSINHcó tên học sinh không 
phải là Mai, Lan, Cúc. Đôi khi tìm ra giá trị không phải giá trị bạn muốn sẽ dễ dàng 
hơn. Ví dụ nói trên cũng tƣơng đƣơng lệnh dƣới đây. 
Select * 
From HOCSINH 
Where TEN „Mai‟ 
And TEN „Lan‟ 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 57 
And TEN „Cúc‟; 
3.1.5 Truy vấn nhóm dữ liệu 
Các hàm tính toán cơ bản 
- COUNT: Đếm số bộ dữ liệu của thuộc tính 
- MIN: Tính giá trị nhỏ nhất 
- MAX: Tính giá trị lớn nhất 
- AVG: Tính giá trị trung bình 
- SUM: Tính tổng giá trị các bộ dữ liệu 
Gom nhóm: mệnh đề GROUP BY 
- Sử dụng hàm gom nhóm trên các bộ trong quan hệ. 
- Mỗi nhóm bộ bao gồm tập hợp các bộ có cùng giá trị trên các thuộc tính gom 
nhóm 
- Hàm gom nhóm áp dụng trên mỗi bộ độc lập nhau. 
- SQL có mệnh đề GROUP BY để chỉ ra các thuộc tính gom nhóm, các thuộc 
tính này phải xuất hiện trong mệnh đề SELECT 
Điều kiện sau gom nhóm: mệnh đề HAVING 
- Lọc kết quả theo điều kiện, sau khi đã gom nhóm 
- Điều kiện ở HAVING đƣợc thực hiện sau khi gom nhóm, các điều kiện có liên 
quan đến thuộc tính Group By 
Ví dụ : Cho lƣợc đồ CSDL “quản lý đề án công ty” nhƣ sau 
NHANVIEN (MaNV, HoTen, Phai, Luong,NTNS, Ma_NQL, MaPH) 
PHONGBAN (MaPH, TenPH, TRPH) 
DEAN (MaDA, TenDA, Phong, NamThucHien) 
PHANCONG (MaNV, MaDA, ThoiGian) 
a.Tính số nhân viên của công ty 
Select COUNT(MaNV) as SoNV from NhanVien 
b.Tính số lƣợng nhân viên quản lý trực tiếp nhân viên khác. 
Select COUNT (DISTINCT Ma_NQL) from NhanVien 
c.Tìm mức lƣơng lớn nhất, mức lƣơng trung bình, tổng lƣơng của công ty. 
Select MAX(Luong), AVG(Luong), SUM(Luong) from NhanVien 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 58 
d.Cho biết nhân viên có mức lƣơng lớn nhất 
Select HoTen from NhanVien 
Where Luong = (Select MAX(Luong) from NhanVien ) 
e.Cho biết số lƣợng nhân viên theo từng phái? 
Select Phai, count(Manv) as SoNV from NhanVien 
Group by Phai 
f.Cho biết số lƣợng nhân viên theo từng phòng? 
Select MaPH, count(Manv) from NhanVien Group by MaPH 
g.Cho biết tên phòng và số lƣợng nhân viên theo từng phòng? 
Select TenPH, count(Manv) as SoLuongNV 
From NhanVien n, PhongBan p Where n.MaPh=p.MaPH 
Group by TenPH 
h.Với mỗi phòng, cho biết số lƣợng nhân viên theo từng phái? 
Select MaPH, Phai, count(Manv) from NhanVien 
Group by Phong, Phai 
i.Đếm số đề án của từng nhân viên tham gia? 
Select MaNV, count(MaDA) as SoDATG From PhanCong 
Group by MaNV 
j.Cho biết mã, tên nhân viên và số đề án mà n/v đã tham gia? 
Select n.MaNV, HoTen, count(MaDA) as SoDATG 
From PhanCong pc, NhanVien n where pc.manv=n.manv Group by MaNV, HoTen 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 59 
BÀI TẬP CHƢƠNG 4 
Bài 1: 
Hocsinh(Mahs,Ho,Ten,Gioitinh,Ngaysinh,Noisinh,Malh) 
Lophoc(Malh,Tenlh,Cahoc,Siso) 
Monhoc(Mamh,Tenmh,Sotiet) 
Bangdiem(Mahs,Mamh,Diem) 
Lophoc 
Malh Tenlh Cahoc Siso 
01TH1 Tin học 1 Sáng 80 
01KT1 Kế toán 1 Chiều 75 
Hocsinh 
Mahs Ho Ten GioiTinh NgaySinh NoiSinh Malh 
TH01 Nguyễn Thị Hải Nữ 23/02/1985 TP.HCM 01TH1 
TH02 Trần Văn Chính Nam 24/12/1986 TP.HCM 01TH1 
TH03 Lê Bạch Yến Nữ 21/02/1990 Hà Nội 01TH1 
KT01 Nguyễn Văn Chinh Nam 31/12/1988 Long An 01KT1 
KT02 Trần Thanh Mai Nữ 12/08/1987 Bến Tre 01KT1 
KT03 Trần Thu Thủy Nữ 01/01/1989 An Giang 01KT1 
Monhoc 
Mamh Tenmh Sotiet 
01 Cơ sở dữ liệu 45 
02 Lập trình căn bản 45 
03 Kiểm toán 45 
04 Kinh tế vi mô 60 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 60 
Bangdiem 
Mahs Mamh Diem 
TH01 01 2.0 
TH01 02 7.5 
TH02 01 5.0 
TH02 02 9.5 
TH03 01 5.0 
TH03 02 3.0 
KT01 03 4.0 
KT01 04 8.0 
KT02 03 7.5 
KT02 04 3.0 
KT03 03 6.0 
KT03 04 9.5 
Câu hỏi: 
1. Tạo CSDL có tên QLHS. 
2. Tạo các bảng và khóa chính, khóa ngoại cho các bảng. 
3. Tạo ràng buộc miền giá trị, ràng buộc duy nhất cho các bảng. 
4. Nhập liệu cho các bảng Lophoc, Hocsinh, Monhoc, Bangdiem 
5. Liệt kê danh sách tất cả các học sinh. 
6. Liệt kê danh sách học sinh nữ lớp kế toán 1. 
7. Liệt kê danh sách học sinh học ca sáng. 
8. Liệt kê danh sách học sinh sinh vào tháng 1 và tháng 12. 
9. Liệt kê danh sách tất cả các học sinh có nơi sinh ở tỉnh. 
10. Liệt kê danh sách học sinh có độ tuổi dƣới 22 tuổi.(Mã học sinh,họ và tên,tuổi) 
11. Thống kê số lƣợng học sinh của từng lớp.(Mã lớp,tên lớp,số lƣợng sinh viên) 
12. Thống kê số lƣợng học sinh nam,nữ của từng lớp.(Mã lớp,tên lớp,số lƣợng sinh 
viên) 
13. Liệt kê danh sách học sinh có họ lót là “văn”.(Mã học sinh,họ và tên) 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 61 
14. Liệt kê danh sách học sinh học môn cơ sở dữ liệu.( Mã học sinh,họ tên) 
15. Liệt kê danh sách học sinh không học môn cơ sở dữ liệu.( Mã học sinh,họ tên) 
16. Liệt kê danh sách học sinh có cùng ngày sinh nhật.( Mã học sinh,họ tên) 
17. Liệt kê danh sách học sinh có điểm trung bình(<5).(Mã học sinh,họ tên,điểm trung 
bình) 
18. Liệt kê danh sách 3 học sinh có điểm trung bình cao nhất.(Mã học sinh,họ tên,điểm 
trung bình) 
19. Cho biết tổng số tiết của lớp tin học 1.(Mã lớp, tên lớp, tổng số tiết) 
20. Cho biết điểm thi cao nhất của môn học Cơ sở dữ liệu 
21. Tạo bảng dữ liệu học sinh nam từ bảng học sinh. 
22. Cộng thêm 1.0 điểm thi môn học Cơ sở dữ liệu cho những học sinh có điểm thi < 5 
23. Thêm 1 môn học mới vào bảng dữ liệu “Môn học”. 
Mamh Tenmh Sotiet 
05 Lập Trình Web 90 
24. Xóa môn học Lập Trình Web trong bảng dữ liệu “Môn học”. 
Bài 2: 
Cho các lƣợc đồ quan hệ Quản lý giáo vụ của một trƣờng nhƣ sau: 
Giaovien(MaGV, HoGV, TenGV, Dchi, Hocvi) 
Sinhvien(MaSV, HoSV, TenSV, Ngaysinh, Dchi, Lop) 
Monhoc(MaMH, TenMH, DVHT) 
Hoc(MaSV, MaMH, MaGV, HK, NK, Lanthi, KQ) 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 62 
Monhoc 
MaMH TenMH DVHT 
TH301 Kỹ thuật lập trình C 4 
TH302 Cấu trúc dữ liệu & Giải thuật 5 
TH303 Toán rời rạc 4 
TH304 Cơ sở dữ liệu 5 
TH305 Lập trình hƣớng đối tƣợng 4 
TH306 Mạng máy tính 3 
TH307 Phân tích và Thiết kế hệ thống 4 
TH308 Lập trình Internet 4 
TH309 Kiến trúc máy tính 2 
TH310 Cơ sở dữ liệu nâng cao 4 
Giaovien 
MaGV HoGV TenGV DChi Hocvi 
GV001 Vũ Đức Phúc Cần Thơ Cử nhân 
GV002 Trần Thái An Bạc Liêu Tiến Sĩ 
GV003 Lý Quốc Bình Đồng Tháp Thạc sĩ 
GV004 Vũ Thị Ngọc Trân Đồng Tháp Cử nhân 
GV005 Lê Phú Quí Tiền Giang Thạc sĩ 
GV006 Nguyễn Quốc Cƣờng Cần Thơ Tiến sĩ 
GV007 Hà Phƣơng Đông Vĩnh Long Thạc sĩ 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 63 
Hoc 
MaSV MaMH MaGV HK NK Lanthi KQ 
SV001 TH301 GV001 1 20102011 1 6 
SV001 TH302 GV001 1 20102011 1 4 
SV001 TH302 GV001 1 20102011 2 7 
SV001 TH303 GV002 2 20112012 1 8 
SV001 TH304 GV002 2 20112012 1 9.5 
SV002 TH304 GV002 2 20112012 1 10 
SV002 TH305 GV003 2 20112012 1 6.5 
SV002 TH309 GV007 2 20112012 1 8.5 
Sinhvien 
MaSV HoSV TenSV NgSinh DChi Lop 
SV001 Hồ Văn Quang 15/05/1984 Đồng Tháp TH3A 
SV002 Nguyễn Văn Thành 18/02/1983 Vĩnh Long 28K10 
SV003 Lê Phong Ba 25/08/1982 Tiền Giang 27K10 
SV004 Hà Thị Tí 29/03/1984 Cà Mau TH3A 
SV005 Trần Ngọc Phụng 10/08/1983 Cần Thơ 28K10 
SV006 Lê Phong Bích Nguyệt 07/12/1983 Đồng Tháp TH3A 
SV007 Lý Thị Ngọc Điệp 19/06/1984 Trà Vinh TIN06 
SV008 Nguyễn Đức Tài 17/01/1984 Vĩnh Long TIN06 
SV009 Thái Bình An 25/09/1983 Đồng Tháp 28K10 
SV010 Lê Đức Anh Khoa 18/04/1985 Cà Mau TH4A 
SV011 Trần Thi Cử 17/02/1986 Đồng Tháp TH5A 
SV012 Hồ Thị Út Em 19/05/1985 Tiền Giang TH5A 
SV013 Thái Thị Bách Hoa 04/12/1984 Bạc Liêu TIN06 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 64 
SV003 TH304 GV002 2 20112012 1 5 
SV003 TH305 GV003 1 20102011 1 6 
SV004 TH304 GV002 2 20102011 1 7 
SV004 TH305 GV003 1 20102011 1 8.5 
SV005 TH305 GV003 1 20102011 1 7.5 
SV005 TH308 GV005 2 20112012 1 6.5 
SV006 TH307 GV004 2 20112012 1 8 
SV006 TH308 GV005 1 20112012 1 9 
SV007 TH307 GV001 2 20112012 1 10 
SV007 TH308 GV006 1 20112012 1 9.5 
SV008 TH307 GV004 2 20112012 1 10 
SV008 TH309 GV007 2 20102011 1 7 
SV008 TH309 GV007 2 20102011 2 8 
SV009 TH307 GV002 2 20102011 1 7 
SV009 TH309 GV001 2 20102011 1 3.5 
SV0013 TH302 GV002 2 20102011 1 4.5 
SV007 TH302 GV004 2 20112012 1 3 
SV009 TH309 GV001 2 20102011 2 5 
SV0013 TH302 GV002 2 20102011 2 5 
Câu hỏi: 
1. Tạo CSDL trên. 
2. In ra mã số, họ tên của các sinh viên có địa chỉ ở Đồng Tháp 
3. In ra thông tin gồm mã số và tên các môn học có số đơn vị học trình từ 3 trở lên 
4. In ra thông tin các sinh viên học các môn do các giáo viên ở Cần Thơ giảng dạy 
5. In ra danh sách các sinh viên thi lần 2 ở năm học 20112012 
6. Cộng thêm 1 điểm cho các sinh viên thi lần 1 ở học kỳ 1, năm học 20112012 
7. Tăng số đơn vị học trình của môn TH308 lên 1 
8. Thêm môn học mới “TH311”, “Trí tuệ nhân tạo”, 3 đvht vào bảng môn học 
Chƣơng 4: Ngôn ngữ truy vấn SQL 
KHOA CÔNG NGHỆ THÔNG TIN Trang 65 
9. In ra thông tin các môn học không đƣợc giảng dạy vào học kỳ 2 năm học 20112012 
10. In ra các môn học vừa đƣợc học bởi các sinh viên lớp TH3A và lớp TH4A 
11. In ra thông tin các môn học theo từng học kỳ niên khoá (những môn trùng nhau chỉ 
giữ lại 1). 
12. In ra các sinh viên không phải thi lần 2 ở năm học 20112012. 
13. In ra thông tin các môn học có tổng số lần học của các sinh viên là nhiều nhất và in 
ra tổng số lần học tƣơng ứng. 
14. In ra các sinh viên có điểm thi lớn nhất theo từng lớp, theo từng môn. 
15. In ra trung số lƣợng môn học của mỗi sinh viên theo từng học kỳ, niên khoá 
16. Cho biết sinh viên nào học nhiều môn nhất ở năm học 20112012, in ra số lƣợng 
học môn cụ thể 
17. In thông tin của các sinh viên chƣa từng học các môn mà giáo viên Vũ Đức Phúc 
đã giảng dạy. 
18. In ra thông tin của giáo viên dạy nhiều sinh viên nhất 
19. In ra thông tin của môn học có nhiều sinh viên không phải thi lại nhiều nhất. 
20. In ra điểm trung bình theo từng học kỳ niên khoá của mỗi sinh viên và cho biết 
sinh viên có điểm trung bình lớn nhất theo từng học kỳ niên khoá. 
TÀI LIỆU THAM KHẢO 
[1] Trần Thành Trai, 1996. “Nhập môn cơ sở dữ liệu”, NXB Trẻ; 
[2] Trần Văn Tƣ, Phú Thành, Thiên Trƣờng, 2000. “Microsoft SQL Server 7.0”, NXB 
Thống kê 

File đính kèm:

  • pdfgiao_trinh_co_so_du_lieu_ban_dep.pdf