Thứ Sáu, 28 tháng 2, 2014

Bài 8



1. Các kháI niệm
Bài toán đặt vấn đề:
Để quản lí một kì thi TNPT, người ta tạo ra một CSDL gồm hai
bảng sau:
Bảng Danh_sach: chứa thông tin
của các thí sinh
Bảng Điem_thi: chứa kết quả
thi các môn của thí sinh

Với các bài toán trên,
Với các bài toán trên,
hãy nêu thao tác để
hãy nêu thao tác để
thực hiện các yêu cầu
thực hiện các yêu cầu
sau:
sau:
Liệt kê những học sinh có
điểm TBM >=8 ?
Tính tổng điểm thi của
từng thí sinh?
Cho biết điểm bình quân
các môn thi của từng
lớp?

Nếu câu hỏi chỉ liên quan tới một bảng,
bằng thao tác tìm kiếm và lọc có thể
tìm được câu trả lời (Ví dụ : câu hỏi 1)
Nhưng với câu hỏi phức tạp, liên quan
tới nhiều bảng thì phải làm như thế
nào???
Trong những trường hợp như vậy cần sử
dụng mẫu hỏi (Query)

Là một loại đối tượng của ACCESS dùng để sắp xếp, tìm kiếm
và kết xuất dữ liệu từ một hoặc nhiều bảng dựa vào liên kết
giữa các bảng.
Các chức năng của mẫu hỏi:

Sắp xếp các bản ghi

Chọn các bản ghi thoả mãn các điều kiện cho trước.

Chọn các trường để hiển thị

Thực hiện tính toán như tính trung bình cộng, tính
tổng, đếm bản ghi

Tổng hợp và hiển thị thông tin từ nhiều bảng hoặc
mẫu hỏi khác.
a. Mẫu hỏi (Query)

b. Biểu thức
bao gồm các toán hạng và các phép toán.
Các phép toán
* Phép toán số học: + - * /
* Phép so sánh: < > <= >= = <>
* Phép toán lôgic: AND OR
NOT
toán hạng
* Tên trường (đóng vai trò các biến)
được ghi trong dấu ngoặc vuông
Ví dụ: [TOAN] , [luong]
* Hằng số. Ví dụ: 0.1 ; 125
* Hằng văn bản. Ví dụ: Nữ ; Nam
* Hàm. Ví dụ: Sum, Avg, max
matdo:[so_dan]/[dien_tich]
Ví dụ:
Tien_Thuong: [luong]*0.1[gt]=Nam and [tin]>=8.5

c. Một số hàm thường gặp trong Access
SUM
Tính tổng
AVG
Tính giá trị trung bình
MIN
Tìm giá trị nhỏ nhất
MAX
Tìm giá trị lớn nhất
COUNT
Đếm số giá trị khác trống (Null).
4 hàm đầu chỉ thực hiện trên các trường dữ liệu kiểu số

2. Tạo mẫu hỏi

Xét bài toán đặt vấn đề:
Bảng Danh_sach: chứa thông tin
của các thí sinh.
Bảng Điem_thi: chứa kết quả
thi các môn của thí sinh
Yêu cầu: a. Tính và cho biết tổng điểm thi của từng thí sinh?
b. Cho biết điểm bình quân của các môn thi theo lớp?

Bước 1: Xác định các thông số cần tạo mẫu hỏi
Các thông số
ví dụ áp dụng:

Nguồn dữ liệu
Bảng DANH_SACH và DIEM_THI

Các trường có mặt trong
mẫu hỏi
Trường SBD, hodem, ten, toan, ly,
sinh, van, su, anh

Điều kiện lọc bản ghi

Trường dùng để sắp xếp
các bản ghi
Trường ten sắp xếp tăngdần

Trường cần tính toán
Tong:[ toan]+[ly]+[sinh]+[van]+[su]+[anh]
Không có

Chọn đối tượng Queries
C1: Tự thiết kế
(Create query in Design view)
C2: Dùng thuật sĩ
(Create query by using wizard)
Bước 2: Tạo mẫu hỏi
1

Chọn dữ liệu nguồn (từ các bảng - table và mẫu hỏi - query)
2

Chọn tên bảng hoặc tên mẫu hỏi và nháy nút Add

Nháy nút Close

Field: Khai báo tên các trường sẽ có mặt trong mẫu hỏi
Table: Tên bảng chứa trường tương ứng
Sort: Xác định các trường cần sắp xếp (nếu có)
Show: Xác định các trường xuất hiện trong mẫu hỏi.
Criteria: Mô tả điều kiện (viết dưới dạng lôgic) để chọn các bản ghi
đưa vào mẫu hỏi.
Khai báo các thông số trong chế độ thiết kế
3

Xây dựng biểu thức tính giá trị cho các trường
4
Nhập tên của trường cần tính toán và nháy nút
Trong hộp thoại Expression Builder nhập biểu thức tính OK

Xem kết quả mẫu hỏi
5
Để xem kết quả mẫu hỏi - chế độ trang dữ liệu nháy nút
Kết quả mẫu hỏi tính tổng điểm thi của từng thí sinh
Kết quả mẫu hỏi tính tổng điểm thi của thí sinh có điểm toán >=8

Xem chi tiết: Bài 8


Không có nhận xét nào:

Đăng nhận xét