Tài liệu này dành cho sinh viên, giáo viên khối ngành công nghệ thông tin tham khảo và có những bài học bổ ích hơn, bổ trợ cho việc tìm kiếm tài liệu, giáo án, giáo trình, bài giảng các môn học khối ngành công nghệ thông tin
Trang 1Thiết kế các kiểu
truy vấn khác
Parameter query Crosstab query Action query
Trang 2PARAMETER QUERY
Trang 3Parameter Query
¡ ĐẶT VẤN ĐỀ
l Giả sử người dùng có các yêu cầu thông tin
Ø Cho biết tổng số tiền bán hàng của Tháng 1
Ø Cho biết tổng số tiền bán hàng của Tháng 4
Ø …
Ø Tính số tiền của hóa đơn HD001
Ø Tính số tiền của hóa đơn HD015
Ø …
¡ Nhận xét: các yêu cầu từng nhóm tương
tự nhau về mặt thiết kế, chỉ khác điều
kiện lọc thông tin
Trang 4Tin quản lý 2 - Query 4
l Điều kiện thay đổi mỗi khi thực hiện truy vấn đó
ð Điều kiện = Parameter (Tham số ầu vào)
Trang 5Cách tạo Parameter query
¡ Xác định khuôn dạng chung (mẫu thiết kế) của
một lớp yêu cầu
l Xây dựng truy vấn theo cách thông thường
¡ Đặt Parameter vào vị trí cần tham số thay đổi khithực hiện query
l Parameter chính là một biến sẽ nhận giá trị khi
thực hiện
¡ Thực hiện truy vấn và nhập giá trị cho Parameter thông qua cửa sổ
Trang 6Tin quản lý 2 - Query 6
l Xđ trường: SoHD, Thanhtien
l Chọn Total query: Groupby theo SoHD và
chọn Sum cho Thanhtien
l Đặt Parameter tại cột SoHD trên dòng Criteria với tên [Nhap so HD can xem]
Trang 8Tin quản lý 2 - Query 8
Ví dụ 4
¡ Tính tổng số tiền của 1 khách hàng bất kỳ trong một tháng nào đó.
Trang 9Ví dụ 4 (tiếp)
Các Parameter lần
lượt của truy vấn
Các cửa sổ yêu cầu nhập giá trị Parameter khi thực hiện truy vấn
Trang 10CROSSTAB QUERY
Trang 12Tin quản lý 2 - Query 12
Dữ liệu thô Dữ liệu đã được tổng hợp theo tháng
Trang 13Dữ liệu đã được phân tích, tổng hợp theo tháng cho từng mặt hàng
Trang 14Tin quản lý 2 - Query 14
Cấu trúc của Crosstab
Giá trị nk Giá trị k1
Value
Column Heading Row Heading
Trang 15Cấu trúc của Crosstab
¡ Dữ liệu trong Crosstab được gộp nhóm
¡ Trường được chọn làm Column heading
’ Giá trị của trường đó làm tiêu đề cột
¡ Trường được chọn làm Row heading
’ Giá trị của trường đó làm tiêu đề hàng
¡ Trường được chọn là Value (dữ liệu phân tích) ’ Giá trị của trường được tính toán, xử lý.
Giá trị nk Giá trị k1
Giá trị 11
Tiêu đề dòng 1
Tiêu đề n Tiêu đề 1
Trang 16Tin quản lý 2 - Query 16
Yêu cầu của Crosstab
¡ Crosstab đúng yêu cầu khi
l Chỉ có 1 trường làm Column Heading
l Có thể có nhiều trường làm Row Heading
l Chỉ có 1 trường làm Value
¡ Các thao tác trên Crosstab làm tương tự như Total Query
Trang 17Ví dụ 1
¡ Yêu cầu: Tính Tổng số tiền bán hàng của từng mặt hàng theo từng tháng Kết quả trình bày dữ liệu với tháng làm Column Heading
¡ Phân tích
l Xđ bảng: Hoadon, CT_hoadon, Hanghoa
l Xđ trường: Thang=Month(Ngayban), Mã
hàng, Tên hàng, Thành tiền
l Chọn Query - Crosstab query
l Column Heading: Thang; Row Heading:
Mã hàng, Tên hàng; Value: Thành tiền
Trang 18Tin quản lý 2 - Query 18
của Crosstab
Trang 19Ví dụ 2
¡ Tính Tổng số tiền bán hàng của từng mặt hàng theo từng tháng và tổng số tiền bán của mặt hàng đó Kết quả trình bày dữ liệu với tháng làm Column Heading
¡ Phân tích
l Tương tự ví dụ 1
l Khác: Tổng số tiền bán hàng của mặt hàng ’
Tính tổng dữ liệu theo dòng
Trang 20Tin quản lý 2 - Query 20
Ví dụ 2(tiếp)
¡ Trường làm Row Heading có thể chọn Hàm gộp nhóm để có giá trị gộp theo dòng.
Chọn Sum tại dòng Total để
tính toán số liệu theo dòng
Trang 21Một vài cách dùng khác
¡ Có thể hiển thị xâu ký tự nào đó trong tên tiêu đề cột/ trường.
l Ví dụ: Tháng 1, Tháng 2, … với “Tháng” do người dùng kết hợp với giá trị tính được từbiểu thức month(Ngayban)
ðDùng cộng xâu “Tháng ”&month(Ngayban)
ðVới & là toán tử nối 2 xâu
Trang 22ACTION QUERY
Trang 23Action query
¡ Các query thực hiện các thao tác thay đổi
dữ liệu trên 1 nhóm các bản ghi
¡ Có 3 kiểu Action query
l Update query: Cập nhật, thay đổi giá trị
trong một vài trường của 1 nhóm bản ghi
l Delete query: Xóa gi 1 số bản ghi trong
bảng theo yêu cầu
l Insert (Append) query: Thêm vào bảng dữ
liệu nào đó 1 nhóm các bản ghi
Trang 24Tin quản lý 2 - Query 24
l Trường được cập nhật: Dongia*(1+20%)
l Các bảng tham gia truy vấn
¡ Hàng hóa
¡ Loại hàng
l Loại truy vấn: chọn Update query
Trang 26Tin quản lý 2 - Query 26
Update query (tiếp)
Công thức thay đổi
dữ liệu được ghi vào dòng Update To
Cột chứa điều kiện
để giới hạn các bản ghi cần cập nhật
Chỉ đưa vào lưới
Trang 27l Loại query: Delete query
Trường chứa điều kiện giới hạn bản ghi để xóa
Trang 28Tin quản lý 2 - Query 28
Delete query (tiếp)
¡ Xóa thông tin chi tiết
các Hóa đơn của khách
TenKH like “*Nam”
l Loại query: Delete query Nếu bản ghi cần xóa
không thuộc cùng bảng chứa điều kiện, chỉ rõ bảng đó
Trang 29APPEND QUERY
¡ Cho phép người dùng chèn thêm dữ liệu vào một bảng DL (ĐÍCH) bất kỳ từ một bảng dữ liệu khác (NGUỒN)
¡ Bảng dữ liệu NGUỒN cần đảm bảo cấu trúc tương tự với cấu trúc của bảng dữ liệu
ĐÍCH
Trang 30Tin quản lý 2 - Query 30
APPEND QUERY – Ví dụ
¡ Chèn vào CT_Hoadon các lượt mua sản
phẩm của hóa đơn có mã là HD043.
¡ Phân tích:
l Bảng nhận dữ liệu thêm: CT_Hoadon
l Bảng chứa dữ liệu thêm: Temp
l Loại truy vấn: Append Query
Trang 31Append query (tiếp)
Điền tên bảng cần chèn dữ liệu
Tên các trường tương ứng để chèn dữ liệu
Bảng Temp chứa dữ liệu chèn