1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bai Tap Thuc Hanh Access 12 3

6 105 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 6
Dung lượng 90,91 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Lập danh sách học bổng của sinh viên dựa trên quả học tập học kì 4: sinh viên không được học lại và thi lại và có điểm trung bình từ 7.0 trở lên.. - Để xếp được học bổng ta cần biết điểm[r]

Trang 1

BÀI THỰC HÀNH TRUY VẤN ĐƠN GIẢN (SỐ 3)

I Mục đích, yêu cầu, kỹ năng - H2.

II Nội dung thực hành

Bài 1 H3 QL điểm

Mở CSDL QLD.MDB đã tạo lập và xây dựng các truy vấn sau:

1 Tạo truy vấn cross-tab để lập bảng điểm học kì 2 của sinh viên Các cột là các môn học (gồm thông tin mã môn học), các dòng là các sinh viên (gồm mã sinh viên và, họ và tên ghép vào nhau) Giá trị tại các ô là điểm

2 Cập nhật bảng KETQUA: các sinh viên đang có KQHOC là phải học lại môn “HỆ QUẢN TRỊ CSDL” được đặt KQHOC là đang học và đặt DIEM là null

3 Tính điểm trung bình học kì 2 của các sinh viên Điểm trung bình được tính bằng tổng điểm nhân số đơn vị học trình chia cho tổng số đơn vị học trình của học kì đó

4 Lập danh sách các sinh viên không phải thi lại, học lại các môn trong kì 2

5 Lập danh sách học bổng của sinh viên dựa trên quả học tập học kì 2: sinh viên không được học lại và thi lại

và có điểm trung bình từ 7.0 trở lên Học bổng gồm các mức sau: XS: 600.000đ với sinh viên có ĐTB

>=9.0, G: 450.000đ với sinh viên có ĐTB từ 8.0 đến dưới 9.0, K: 300.000đ với sinh viên còn lại

6 Tính điểm trung bình của tất cả các sinh viên trong tất cả các học kì

7 Lập bảng điểm của một sinh viên có mã nhập từ bàn phím, các môn học được xếp nhóm theo từng học kì

Hướng dẫn

Câu 11 Tạo truy vấn cross-tab để lập bảng điểm học kì 4 của sinh viên Các cột là các môn

học (tên môn học), các dòng là các sinh viên (họ và tên ghép vào nhau)

Giá trị tại các ô là điểm.

Để thiết kế truy vấn cross tab, đầu tiên ta tạo truy vấn như vẫn làm:

Sau đó, ta chuyển nó thành truy vấn Cross-tab (chọn trên menu Query)

Tiếp theo ta chọn các trường thông tin và các yêu cầu tương ứng:

Trang 2

 Với thông tin họ tên sinh viên: ta phải ghép họ và tên, phải thêm dấu cách để phân biệt họ và tên nên ta dùng biểu thức: [HO] & " " & [TEN] Theo yêu cầu họ tên sinh viên là các dòng nên ta chọn Total là

Group By và Crosstab là Row Heading.

Tên môn học là thông tin các cột nên Total là Group By và Crosstab là Column Heading.

Giá trị ở các ô là điểm nên trường DIEM được đặt Crosstab là Value Do mỗi sinh viên chỉ học 1 môn học

trong 1 học kì nên ta chọn Total là First (vì thực ra cũng chỉ có một điểm mà thôi)

 Trường HOCKY được thêm vào để xác định điều kiện (vì truy vấn yêu cầu thông tin học tập học kì 4) Ta

chọn Total là Where, Crosstab là not shown và đặt điều kiện là 4.

Câu 12 Cập nhật bảng KETQUA: các sinh viên đang có KQHOC là phải học lại môn “HỆ

QUẢN TRỊ CSDL” được đặt KQHOC là đang học và đặt DIEM là null.

Đây là câu truy vấn cập nhật (UPDATE)

Thiết kế truy vấn như sau:

Đầu tiên chọn thiết kế truy vấn như vẫn làm: chọn 2 bảng MONHOC và KETQUA vì cần thông tin ở hai bảng đó

Sau đó đổi trên menu Query truy vấn này thành truy vấn Update:

Trang 3

Tiếp theo thiết lập các thông tin cho truy vấn:

Câu 13 Tính điểm trung bình học kì 2 của các sinh viên Điểm trung bình được tính bằng tổng điểm nhân số đơn vị học trình chia cho tổng số đơn vị học trình của học kì đó.

Truy vấn này có sử dụng các hàm thống kê (truy vấn có Total) Sau khi chọn các bảng trong truy vấn:

Ta bấm nút Total trên thanh công cụ để chuyển thành truy vấn có thống kê, sau đó viết các mô tả như sau:

Trang 4

Đáng chú ý nhất là biểu thức tính điểm trung bình học kì:

DIEMTB: Sum([DIEM]*[DVHT])/Sum([DVHT])

Câu 14 Lập danh sách các sinh viên không phải thi lại môn nào trong kì 4.

- Có nhiều cách để xây dựng truy vấn này Một trong đó là ta sẽ tìm các sinh viên có điểm thi nhỏ nhất trong học

kì 4 lớn hơn hoặc bằng 5 Khi đó sinh viên này không phải thi lại môn nào

- Ta tạo truy vấn có thống kê (total), đặt 2 trường HO,TEN là Group By (vì là 2 trường cần lấy làm kết quả và ta cũng cần thống kê theo từng sinh viên) Trường cần thống kê là trường DIEM với hàm thống kê Min và điều kiện

là >=5 Trường HOCKY là trường mô tả điều kiện, ta chọn Total của nó là Where Chú ý là không hiển thị trường DIEM và HOCKY

Câu 15 Lập danh sách học bổng của sinh viên dựa trên quả học tập học kì 4: sinh viên không được học lại và thi lại và có điểm trung bình từ 7.0 trở lên Học bổng gồm các mức sau: XS: 600.000đ với sinh viên có ĐTB >=9.0, G: 450.000đ với sinh viên có ĐTB từ 8.0 đến

dưới 9.0, K: 300.000đ với sinh viên còn lại.

- Để xếp được học bổng ta cần biết điểm trung bình học kì của sinh viên và biết sinh viên không thi lại Danh sách điểm trung bình của sinh viên có ta đã tìm trong truy vấn ở câu 13, danh sách sinh viên không thi lại có trong truy vấn câu 14 Ta sẽ xây dựng truy vấn dựa trên 2 truy vấn đó

- Để xây dựng truy vấn trên các truy vấn khác, khi tạo truy vấn, ta thêm truy vấn nguồn như sau:

Trang 5

Sau đó ta phải tự tạo liên kết cho 2 truy vấn đó Ở đây ta liên kết theo trường TEN và cả HO (để đảm bảo thông tin của sinh viên 2 bên đều giống nhau Thực ra cách an toàn hơn là trong các truy vấn phụ ta lấy cả mã số sinh viên, sau đó liên kết qua mã số sinh viên thì chắc chắn vì mỗi sinh viên chỉ có một mã số duy nhất)

Để tính học bổng theo DIEMTB, ta dùng hàm IIf:

HOCBONG: IIf(DIEMTB>=9,600000,IIf(DIEMTB>=8,450000,30000))

Cuối cùng ta có truy vấn:

Câu SQL tương đương là:

SELECT HO, TEN, DIEMTB,

IIf(DIEMTB>=9.0,600000, IIf(DIEMTB>=8.0,450000,30000)) AS HOCBONG

FROM cau13, cau14

WHERE cau13.HO = cau14.HO AND cau13.TEN = cau14.TEN;

Câu 16 Tính điểm trung bình của tất cả các sinh viên trong tất cả các học kì.

Câu này tương tự câu 13, chỉ không xét điều kiện HOCKY=4

Trang 6

Câu 17 Lập bảng điểm của một sinh viên có mã nhập từ bàn phím, các môn học được xếp

nhóm theo từng học kì.

Ngày đăng: 17/07/2021, 00:45

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w