Professional Documents
Culture Documents
Bai Thuc Hanh - NgonNguTruyVanSQL
Bai Thuc Hanh - NgonNguTruyVanSQL
Bai Thuc Hanh - NgonNguTruyVanSQL
Lưu ý: - Sinh viên phải chuẩn bị bài trước buổi thực hành, nếu không sẽ không
được phép vào phòng máy.
- Giáo viên hướng dẫn sinh viên những nội dung cần thiết trước buổi
thực hành.
1. Lý thuyết
2. Thực hành
2.1. Tạo CSDL có tên là QuanLyThuVien.
2.2. Tạo các bảng sau:
Bảng TAC_GIA
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
MA_TG Char 10 Khóa chính
TEN_TG Varchar 50
NAM_SINH Date
GIOI_TINH Bit
Bảng NHA_XUAT_BAN
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
MA_NHA_XB Char 10 Khóa chính
TEN_NHA_XB Varchar 50
DIA_CHI Varchar 80
DIEN_THOAI Char 10
Bảng SACH
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
MA_SACH Char 10 Khóa chính
TEN_SACH Varchar 50
MA_NHA_XB Char 10 Khóa ngoài, tham
chiếu tới bảng
NHA_XUAT_BAN
Bảng SANG_TAC
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
MA_SACH Char 10 Khóa chính
MA_TG Char 10 Khóa chính
Bảng DOC_GIA
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
SO_THE Char 10 Khóa chính
HO_TEN Varchar 50
DIA_CHI Varchar 80
DIEN_THOAI Char 10
Bảng MUON
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
SO_THE Char 10 Khóa chính
MA_SACH Char 10 Khóa chính
NGAY_MUON Date Khóa chính
NGAY_TRA Date
2.3. Tạo mối quan hệ cho các bảng trên: sử dụng diagram
2.4. Nhập dữ liệu cho các bảng sau:
Thêm các bộ giá trị sau vào bảng TAC_GIA
TAC_GIA
MA_TG TEN_TG NAM_SINH GIOI_TINH
TG001 Trần Duy Nghĩa 1/1/1950 1
TG002 Phan Ngọc Diệp 1/2/1949 0
TG003 Nguyễn Xuân Huy 5/5/1984 1
TG004 Phạm Thị Hiền 8/2/1980 0
Lưu ý: - Sinh viên phải chuẩn bị bài trước buổi thực hành, nếu không sẽ không
được phép vào phòng máy.
- Giáo viên hướng dẫn sinh viên những nội dung cần thiết trước buổi
thực hành.
1. Lý thuyết
Cú pháp câu lệnh Select đơn giản
SELECT [ALL | DISTINCT][TOP n] <*|danh_sách_các trường
cần hiển thị>
[INTO tên_bảng_mới]
FROM <danh_sách_bảng/khung_nhìn>
[WHERE điều_kiện_lọc dữ_liệu]
[ORDER BY < DS các trường cần sắp xếp> [ASC|DESC]]
2. Thực hành
2.1. Bài thực hành
Sử dụng CSDL QuanLyThuVien đã tạo ở bài thực hành số 1 để thực hiện các công
việc sau:
a. Đưa ra danh sách các đầu sách có trong thư viện. Mỗi đầu sách có những thông
tin (Tên sách, Tác giả, Nhà xuất bản). Danh sách được sắp xếp theo tên sách.
b. Lấy ra tất cả các quyển sách có tên có chứa từ là ‘Thế giới’.
c. Hiển thị các quyển sách được xuất bản tại Hà Nội.
d. Lấy ra danh sách các độc giả có mượn sách mà chưa trả.
e. Lấy ra các độc giả tới mượn sách trong tháng 4/2008.
f. Lấy ra các quyển sách của tác giả TG001.
g. Lấy ra các tác giả có tuổi dưới 35 và giới tính là nữ.
h. Hiển thị các độc giả tới mượn sách với các thông tin: mã độc giả, tên độc giả,
địa chỉ, số điện thoại, mã sách, tên sách, Nhà xuất bản, tác giả. Danh sách được
sắp xếp theo tên độc giả.
i. Hiển thị các tác giả có họ là Nguyễn.
j. Hiển thị 2 tác giả đầu tiên. Danh sách gồm có mã tác giả, tên tác giả, ngày sinh.
Danh sách được sắp xếp tăng dần theo tên và giảm dần theo ngày sinh.
2.2. Các đoạn mã lệnh của phần bài tập bắt buộc (SV phải chuẩn bị trước ở nhà)
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
2.3. Các kết quả đạt được của bài tập sau buổi thực hành
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
3. Đánh giá và nhận xét của giáo viên
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
Lưu ý: - Sinh viên phải chuẩn bị bài trước buổi thực hành, nếu không sẽ không
được phép vào phòng máy.
- Giáo viên hướng dẫn sinh viên những nội dung cần thiết trước buổi
thực hành.
1. Lý thuyết
Cú pháp câu lệnh Select đầy đủ
SELECT [ALL | DISTINCT][TOP n] <*|danh_sách_các trường
cần hiển thị>
[INTO tên_bảng_mới]
FROM <danh_sách_bảng/khung_nhìn>
[WHERE điều_kiện_lọc dữ_liệu]
[GROUP BY danh_sách_cột_cần_gộp_nhóm]
[HAVING điều_kiện_lọc_dữ_liệu_khi sử dụng hàm
gộp]
[ORDER BY < DS các trường cần sắp xếp> [ASC|DESC]]
Lưu ý:
- Các hàm gộp thường dùng: sum(), count(), avg(), max(), min()
- group by: được dùng khi muốn gom nhóm dữ liệu thành từng nhóm nhỏ
rồi tính toán (sử dụng hàm gộp) trên từng nhóm dữ liệu đó.
- Having: được dùng khi điều kiện lọc dữ liệu có sử dụng hàm gộp.
2. Thực hành
2.1. Bài thực hành
Có một siêu thị điện máy chuyên bán các mặt hàng như Máy giặt, tủ lạnh, bếp
điện,…
Để quản lý bán hàng trong siêu thị này người ta đã thiết kế ra một CSDL như sau
- Bảng Customer lưu danh sách những khách hàng đã đến cửa hàng gồm cả những
người có mua hàng và cả những người không mua hàng.
- Mỗi khách hàng khi mua hàng thi siêu thị sẽ viết một hóa đơn mua hàng gồm
các thông tin mã khách(cID), số hóa đơn(oID), ngày mua(oDate), danh sách tên
các sản phẩm được mua, số lượng mỗi loại, giá tiền của sản phẩm. tất cả các
thông tin trên được lưu trong 3 bảng Order, Orderdetail và Product.
- Mỗi khách hàng có thể mua hàng nhiều lần, nên có thể có nhiều hóa đơn cho mỗi
khách.
- Mỗi hóa đơn có thể có nhiều mặt hàng
- Mỗi mặt hàng trong hóa đơn có thể được mua với số lượng nhiều hơn 1 cái.
Chú ý dữ liệu có thể được nhập thêm tùy ý.
Hãy Tạo một CSDL đặt tên là ‘QLBH’ + <tên máy(tên Lab)>............................
Hãy tạo 4 bảng và chèn dữ liệu như hình dưới đây: ..............................................
Customer (Lưu danh sách các khách hàng)
cID (int primary key) cName (VarChar (25)) cAge (tinyint)
1 Minh Quan 10
2 Ngoc Oanh 20
3 Hong Ha 50
Order (Lưu các hóa đơn)
oID (int cID (int foregin key oDate oTotalPrice
primary key) tham chiếu tới cID (Datetime) (int)
của Customer) (Ngày mua) Tổng tiền của
hóa đơn
1 1 3/21/2006 Null
2 2 3/23/2006 Null
3 1 3/16/2006 Null
Product (Lưu danh sách tên và giá các sản phẩm có tại cửa hàng)
pID (int primary key) pName (varchar(25)) pPrice (int)
1 May Giat 3
2 Tu Lanh 5
3 Dieu Hoa 7
4 Quat 1
5 Bep Dien 2
OrderDetail (Lưu chi tiết của hóa đơn, gồm tên sản phẩm và số lượng)
oID (int foreign key pID (int foreign key odQTY (int)
tham chiếu tới oID của tham chiếu tới pID của (Số lượng)
Order) Product)
1 1 3
1 3 7
1 4 2
2 1 1
3 1 8
2 5 4
2 3 3
c. Hiển thị danh sách các khách hàng đã mua hàng, và danh sách sản phẩm được
mua bởi các khách đó như sau:......................................................................................
d. Hiển thị các hóa đơn được lập trong tháng 3 năm 2006
e. Hiển thị doanh thu của mỗi tháng trong năm 2006
f. Mỗi khách hàng đã đến mua bao nhiêu lần.
g. Mỗi khách hàng đã mua hàng bao nhiêu tiền trong năm 2006.
h. Hiển thị chi tiết của từng hóa đơnnhư sau :....................................................................
i. Hiển thị mã hóa đơn, ngày bán và giá tiền của từng hóa đơn (giá một hóa đơn
được tính bằng tổng giá bán của từng loại mặt hàng xuất hiện trong hóa đơn.
Giá bán của từng loại được tính = odQTY*pPrice) như sau:.......................................
j. Hiển thị những hóa đơn có tổng thành tiền trên 30.
k. HIển thị những khách hàng đã mua hàng trên 3 lần.
2.3. Các đoạn mã lệnh của phần bài tập bắt buộc (SV phải chuẩn bị trước ở nhà)
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
2.4. Các kết quả đạt được của bài tập sau buổi thực hành
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
Lưu ý: - Sinh viên phải chuẩn bị bài trước buổi thực hành, nếu không sẽ không
được phép vào phòng máy.
- Giáo viên hướng dẫn sinh viên những nội dung cần thiết trước buổi
thực hành.
1. Lý thuyết
Cú pháp câu lệnh Select đầy đủ
SELECT [ALL | DISTINCT][TOP n] <*|danh_sách_các trường
cần hiển thị>
[INTO tên_bảng_mới]
FROM <danh_sách_bảng/khung_nhìn>
[WHERE điều_kiện_lọc dữ_liệu]
[GROUP BY danh_sách_cột_cần_gộp_nhóm]
[HAVING điều_kiện_lọc_dữ_liệu_khi sử dụng hàm
gộp]
[ORDER BY < DS các trường cần sắp xếp> [ASC|DESC]]
Lưu ý:
- Các hàm gộp thường dùng: sum(), count(), avg(), max(), min()
- group by: được dùng khi muốn gom nhóm dữ liệu thành từng nhóm nhỏ
rồi tính toán (sử dụng hàm gộp) trên từng nhóm dữ liệu đó.
- Having: được dùng khi điều kiện lọc dữ liệu có sử dụng hàm gộp.
- Truy vấn con là một câu lệnh SELECT được lồng vào bên trong một câu
lệnh SELECT, INSERT, UPDATE, DELETE hoặc bên trong một truy vấn con
khác. Loại truy vấn này được sử dụng để biểu diễn cho những truy vấn trong đó điều
kiện truy vấn dữ liệu cần phải sử dụng đến kết quả của một truy vấn khác.
- Phép hợp được sử dụng trong trường hợp ta cần gộp kết quả của hai hay
nhiều truy vấn thành một tập kết quả duy nhất. SQL cung cấp toán tử UNION
để thực hiện phép hợp. Cú pháp như sau:
Câu_lệnh_1
UNION [ALL] Câu_lệnh_2
[UNION [ALL] Câu_lệnh_3]
...
[UNION [ALL]
Câu_lệnh_n] [ORDER
BY
cột_sắp_xếp]
[COMPUTE danh_sách_hàm_gộp [BY danh_sách_cột]]
Trong đó
Câu_lệnh_1 có dạng
SELECT danh_sách_cột
[INTO tên_bảng_mới]
[FROM danh_sách_bảng|
khung_nhìn] [WHERE
điều_kiện]
[GROUP BY
danh_sách_cột]
[HAVING điều_kiện]
và Câu_lệnh_i (i = 2,..,n) có dạng
SELECT danh_sách_cột
[FROM danh_sách_bảng|
khung_nhìn] [WHERE
điều_kiện]
[GROUP BY danh_sách_cột]
[HAVING điều_kiện]
Khi sử dụng toán tử UNION để thực hiện phép hợp, ta cần chú ý các nguyên tắc
sau:
• Danh sách cột trong các truy vấn thành phần phải có cùng số lượng.
• Các cột tương ứng trong tất cả các bảng, hoặc tập con bất kỳ các cột
được sử
dụng trong bản thân mỗi truy vấn thành phần phải cùng kiểu dữ liệu.
• Các cột tương ứng trong bản thân từng truy vấn thành phần của một câu
lệnh UNION phải xuất hiện theo thứ tự như nhau. Nguyên nhân là do
phép hợp so sánh các cột từng cột một theo thứ tự được cho trong mỗi
truy vấn.
• Khi các kiểu dữ liệu khác nhau được kết hợp với nhau trong câu
lệnh
UNION, chúng sẽ được chuyển sang kiểu dữ liệu cao hơn (nếu có thể
được).
• Tiêu đề cột trong kết quả của phép hợp sẽ là tiêu đề cột được chỉ định
trong truy vấn đầu tiên.
• Truy vấn thành phần đầu tiên có thể có INTO để tạo mới một bảng
từ kết quả của chính phép hợp.
• Mệnh đề ORDER BY dùng để sắp xếp kết quả truy vấn hoặc tính toán
các giá trị thống kê chỉ được sử dụng ở cuối câu lệnh UNION. Chúng
không được sử dụng ở trong bất kỳ truy vấn thành phần nào.
• Mệnh đề GROUP BY và HAVING chỉ có thể được sử dụng trong bản
thân từng truy vấn thành phần. Chúng không được phép sử dụng để tác
động lên kết quả chung của phép hợp.
• Phép toán UNION có thể được sử dụng bên trong câu lệnh INSERT.
2. Thực hành
2.1. Bài thực hành
- Tạo CSDL có tên là QuanLySinhVien gồm có các bảng sau:
Subjects
SubjectID SubjectName
1 SQL
2 Java
3 C
4 Visual Basic
Marks
SubjectID StudentID Mark
1 1 8
2 1 4
1 1 9
1 3 7
1 4 3
2 5 5
3 3 8
3 5 1
2 4 3
2.2. Các đoạn mã lệnh của phần bài tập bắt buộc (SV phải chuẩn bị trước ở nhà)
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
2.3. Các kết quả đạt được của bài tập sau buổi thực hành
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
Lưu ý: - Sinh viên phải chuẩn bị bài trước buổi thực hành, nếu không sẽ không
được phép vào phòng máy.
- Giáo viên hướng dẫn sinh viên những nội dung cần thiết trước buổi
thực hành.
1. Lý thuyết
Cú pháp câu lệnh Select đầy đủ
SELECT [ALL | DISTINCT][TOP n] <*|danh_sách_các trường
cần hiển thị>
[INTO tên_bảng_mới]
FROM <danh_sách_bảng/khung_nhìn>
[WHERE điều_kiện_lọc dữ_liệu]
[GROUP BY danh_sách_cột_cần_gộp_nhóm]
[HAVING điều_kiện_lọc_dữ_liệu_khi sử dụng hàm
gộp]
[ORDER BY < DS các trường cần sắp xếp> [ASC|DESC]]
Cú pháp câu lệnh Insert đầy đủ
- Bổ sung từng dòng dữ liệu
INSERT INTO tên_bảng[(danh_sách_cột)]
VALUES(danh_sách_trị)
- Bổ sung nhiều dòng dữ liệu
INSERT INTO tên_bảng[(danh_sách_cột)]
câu_lệnh_SELECT
Cú pháp câu lệnh Update đầy đủ
UPDATE tên_bảng
SET tên_cột = biểu_thức
[, ..., tên_cột_k = biểu_thức_k]
[FROM danh_sách_bảng]
[WHERE điều_kiện]
Cú pháp câu lệnh Delete đầy đủ
DELETE FROM tên_bảng
[FROM danh_sách_bảng]
[WHERE điều_kiện]
2. Thực hành
2.1. Bài thực hành
Cho một CSDL như hình dưới
Bảng Test lưu danh sách các môn học. Bảng Student lưu danh sách các học viên.
Bảng StudentTest lưu danh sách điểm thi và ngày thi của mỗi học viên với môn
thi.
Một học viên chưa thi môn nào nếu như mã học viên (rn) không xuất hiện trong
bảng StudentTest. Một môn học chưa có ai thi nếu mã môn học (TestID) không
xuất hiện trong bảng StudentTest.
Chú ý dữ liệu có thể được nhập thêm tùy ý.
- Hãy Tạo một CSDL đặt tên là ‘StudentTest’ + <tên máy(tên Lab)>.
- Tạo 3 bảng và chèn dữ liệu như hình dưới đây:
Student (Lưu danh sách các học viên gồm mã học viên(RN), tên(Name), tuổi(Age))
RN (int primary key) Name (VarChar (20)) Age (tinyint)
1 Nguyen Hong Ha 20
2 Truong Ngoc Anh 30
3 Tuan Minh 25
4 Dan Truong 22
Test (Lưu danh sách môn học gồm mã môn học (TestID, tên môn học(Name))
TestID (int primary key) Name (Varchar(20))
1 EPC
2 DWMX
3 SQL1
4 SQL2
StudentTest (Lưu điểm thi của học viên với từng môn thi, gồm mã học viên (RN), mã
môn học (TestID), ngày thi(Date), điểm thi(Mark))
RN (int foreign key TestID (int foreign key Date Mark
tham chiếu tới RN tham chiếu tới TestID (Datetime) (Float)
của Student) của Test)
1 1 7/17/2006 8
1 2 7/18/2006 5
1 3 7/19/2006 7
2 1 7/17/2006 7
2 2 7/18/2006 4
2 3 7/19/2006 2
3 1 7/17/2006 10
3 3 7/18/2006 1
- Hãy tạo các truy vấn sau:
a. Đưa ra tuổi trung bình của các học viên
b. Tính xem mỗi học viên đã thi được bao nhiêu ngày rồi
c. Lấy ra những sinh viên không phải thi lại
d. Đưa ra điểm của học viên dưới dạng 4 chữ số, 2 chữ số sau dấu phảy
e. Hiển thị danh sách các học viên đã tham gia thi, các môn thi được thi bởi các học
viên đó, điểm thi và ngày thi giống như hình sau:..............................................................
f. Hiển thị danh sách các bạn học viên chưa thi môn nào như hình sau:...............................
g. Hiển thị danh sách học viên và điểm trung bình(Average) của các môn đã thi.
Danh sách phải sắp xếp theo thứ tự điểm trung bình giảm dần(nếu không sắp xếp
thì chỉ được ½ số điểm) như sau:........................................................................................
h. Hiển thị tên và điểm trung bình của học viên có điểm trung bình lớn nhất như sau:.........
i. Hiển thị điểm thi cao nhất của từng môn học. Danh sách phải được sắp xếp theo
tên môn học như sau:..........................................................................................................
j. Hiển thị danh sách tất cả các học viên và môn học mà các học viên đó đã thi nếu
học viên chưa thi môn nào thì phần tên môn học để Null như sau:....................................
k. Hiển thị danh sách sinh viên và số môn mà họ bị thi lại. Nếu học viên nào không
bị thi lại môn nào thì cột số môn ghi là 0.
l. Hãy viết câu lệnh dùng đểm thêm mới 1 học viên.
m. Hãy xóa học viên vừa mới thêm vào.
n. Sửa (Update) tuổi của tất cả các học viên mỗi người lên một tuổi.....................................
o. Thêm trường tên là Status có kiểu Varchar(10) vào bảng Student. Hãy cập
nhật(Update) trường Status sao cho những học viên nhỏ hơn 30 tuổi sẽ nhận giá
trị ‘Young’, trường hợp còn lại nhận giá trị ‘Old’ sau đó hiển thị toàn bộ nội dung
bảng Student lên như sau:
2.2. Các đoạn mã lệnh của phần bài tập bắt buộc (SV phải chuẩn bị trước ở nhà)
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
2.4. Các kết quả đạt được của bài tập sau buổi thực hành
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
3. Đánh giá và nhận xét của giáo viên
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................
.............................................................................................................................................................