3.3 Tạo truy vấn bằng lưới QBE
3.3.1 Tạo truy vấn mới
3.3.2.4 Tạo thêm trường dữ liệu trong kết quả truy vấn
Trong truy vấn dữ liệu ngoài việc liên kết dữ liệu lấy từ các trường trong các bảng ta còn có thể tạo thêm các trường dữ liệu mới mà thông tin bên trong đó có thể lấy từ một trường hoặc tổng hợp thông tin từ nhiều trường trong bảng.
Chúng ta sử dụng các toán tử (+, -, *, /), các hàm (Year, Month, Date, Iif…) để tạo lập các biểu thức tổng hợp dữ liệu cho trường mới.
Để tạo thêm trường dữ liệu trong kết qủa truy vấn ta thực hiện như sau:
- Thiết kế truy vấn theo các bước như trong phần tạo truy vấn mới.
- Tại cột trống trong vùng lưới QBE, tại dòng Field ta tạo thêm trường theo quy tắc:
<Tên trường mới>:<biểu thức lấy dữ liệu>
Hoặc để đặt lại tên cho trường dữ liệu có sẵn ta thực hiện theo quy tắc:
<Tên mới>:<Tên cũ>
+ Ví dụ: Trong csdl Quan ly Sinh Vien cho xem thông tin gồm
Mã SV, Họ tên SV, TENMH, LANTHI, DIEM của các sinh viên.
Hình 3.15
Kết quả của truy vấn trên:
Hình 3.16 3.3.3 Tạo các loại truy vấn bằng công cụ QBE
Trong mục III.1 (Tạo truy vấn mới), truy vấn được tạo ra mặc định là loại truy vấn Select Query. Để thực hiện tạo truy vấn theo đúng loại yêu
cầu ta thực hiện như sau:
- Trong cửa sổ cơ sở dữ liệu chọn thẻ Query chọn nút lệnh New (hoặc chọn menu Insert Query) xuất hiện hộp thoại New Query.
- Đóng hộp thoại Show Table, vào menu Query (hoặc kích chọn vào nút mũi tên của nút lệnh Query Type trên thanh công cụ) chọn loại truy vấn cần tạo.
- Tiếp tục thực hiện việc tạo truy vấn như trong phần tạo truy vấn mới (II.1… tiếp tục từ bước 3) tuy nhiên tùy vào từng loại truy vấn mà có những điểm khác nhau.
Hình 3.17 Query chọn lựa (Select query)
- Cửa sổ thiết kế của truy vấn chọn lựa đơn giản:
Hình 3.18
+ Các bước tạo loại truy vấn này xem ở mục III.1 (Tạo truy vấn mới)
- Cửa sổ thiết kế của truy vấn chọn lựa có nhóm dữ liệu:
Hình 3.19
+ Hiển thị dòng Total trong vùng lưới QBE: Vào menu View chọn Total (hoặc kích chuột phải tại vùng lưới QBE chọn Total)
Mục Total gồm các giá trị sau:
- Group by: Kết nhóm cần thống kê.
- Sum: Tính tổng theo nhóm trong bảng thống kê.
- Avg: Tính trung bình cộng trong nhóm.
- Count: Đếm số mẫu tin trong nhóm.
- Max: Tính giá trị lớn nhất trong nhóm.
- Min: Tính giá trị nhỏ nhất trong nhóm.
- First: Tìm giá trị đầu tiên
- Last: Tìm giá trị cuối cùng
- Expression: Biểu thức tính toán từ các cột dữ liệu khác trong bảng
- Where: Cho phép tạo thêm điều kiện lọc dữ liệu cho
query
+ Ví dụ 3.1: Trong csdl Quan ly Sinh Vien cho xem thông tin gồm MAKHOA, TENKHOA và Tổng số sinh viên trong khoa.
Cần nhóm dữ liệu theo MAKHOA và TENKHOA (Group By) sau đó đếm MASV (Count).
Hình 3.20
Kết quả:
Hình 3.21 3.4 Query tạo bảng (Make – Table query)
- Sau khi thực hiện thao tác chọn loại truy vấn Make – Table Query sẽ xuất hiện hộp thoại Make Table:
Hình 3.22
- Trong mục Table Name: Nhập tên bảng sẽ tạo
- Chọn Current Database nếu muốn bảng tạo ra sẽ lưu
trong csdl hiện hành.
Chọn Another Database nếu muốn bảng tạo ra sẽ lưu trong csdl khác tại mục File Name nhập hoặc chọn đường dẫn (nút Browse…) đến csdl mà ta sẽ lưu bảng.
- OK
+ Ví dụ 3.2: Trong csdl Quan ly Sinh Vien tạo bảng lưu thông tin gồm MASV, HOSV, TENSV, MAKHOA, NAMHOC, HOCBONG của những sinh viên có học bổng.
Hình 3.23
Kết quả truy vấn trên xem ở chế độ Datasheet View:
Hình 3.24 3.5 Query thêm (Append query)
- Ở truy vấn thêm dữ liệu ta lưu ý khi mở cửa sổ thiết kế truy vấn
ta không thêm bảng dữ liệu vào vùng chứa bảng (đóng hộp thoại Show Table) chọn loại truy vấn Append Query xuất hiện hộp thoại Append:
Hình 3.25
- Chọn Current Database nếu muốn thêm từng dòng vào
bảng trong csdl hiện hành.
Chọn Another Database nếu muốn lấy dữ liệu từ bảng trong csdl hiện hành thêm vào một bảng trong một csdl khác tại mục File Name nhập hoặc chọn đường dẫn (nút Browse…) đến csdl mà ta muốn thêm dữ liệu vào.
- Trong mục Table Name: Chọn tên bảng cần thêm dữ liệu.
- OK Xuất hiện cửa sổ thiết kế loại truy vấn thêm dữ liệu:
Hình 3.26
-Dòng Append To: Chọn tên trường cần thêm dữ liệu.
-Dòng Field: Giá trị, hoặc biểu thức giá trị nhập vào, hoặc chọn tên trường chứa giá trị sẽ thêm vào trường được nêu tên trong dòng Append To, trong trường hợp này dòng Table sẽ hiển thị tên bảng chứa trường đó.
-Dòng Criteria: Nhập điều kiện thêm dữ liệu nếu có.