Bài giảng Tin quản lý 2 - Thiết kế các kiểu truy vấn khác

Parameter Query

¡ĐẶT VẤN ĐỀ

lGiảsửngười dùngcócácyêucầuthôngtin

ChobiếttổngsốtiềnbánhàngcủaTháng1

ChobiếttổngsốtiềnbánhàngcủaTháng4

TínhsốtiềncủahóađơnHD001

TínhsốtiềncủahóađơnHD015

¡Nhậnxét:cácyêucầutừngnhómtương

tựnhauvềmặtthiếtkế, chỉ khácđiều

kiệnlọcthôngtin

pdf31 trang | Chuyên mục: Hệ Thống Thông Tin Quản Lý | Chia sẻ: dkS00TYs | Lượt xem: 1733 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Tin quản lý 2 - Thiết kế các kiểu truy vấn khác, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
Thiết kế các kiểu
truy vấn khác
Parameter query
Crosstab query
Action query
PARAMETER QUERY
Tin quản lý 2 - Query 3
Parameter 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
Tin quản lý 2 - Query 4
Giải pháp?
¡ Mỗi yêu cầu thiết kế 1 truy vấn?
¡ Nhược điểm
l Tốn thời gian
l Tốn bộ nhớ
¡ Liệu có cách làm tổng quát không?
l Chỉ có chung một thiết kế
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)
Tin quản lý 2 - Query 5
Cá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 khi
thự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ổ
Tin quản lý 2 - Query 6
Ví dụ 3
¡ Cho biết tổng tiền của 1 hóa đơn bất kỳ
¡ Phân tích
l Thiết kế truy vấn: tính tổng tiền của từng hóa
đơn
l Xđ bảng: CT_Hoadon, Hanghoa
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]
Tin quản lý 2 - Query 7
Ví dụ 3 (tiếp)
Tham số thay đổi khi
thực hiện thường là
điều kiện lọc dữ liệu
Cửa sổ để nhập giá
trị vào tham số khi
thực hiện truy vấn
Tin 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 đó.
¡ Phân tích
l Tính tổng số tiền của từng khách hàng theo
từng tháng.
l Chọn Total query
l Đặt lần lượt các Parameter 
¡ [Nhap MaKH] trên cột Mã KH; nếu NSD không
biết đầy đủ mã KH thì Like “*”&[Nhap MaKH]
¡ [Nhap thang] trên cột Tháng
Tin quản lý 2 - Query 9
Ví 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
CROSSTAB QUERY
Tin quản lý 2 - Query 11
CROSSTAB QUERY
¡ NSD muốn có thông tin phân tích, tổng
hợp từ một nhóm bản ghi
¡ Kết quả được trình bày dưới dạng bảng 2 
chiều
ð Dễ so sánh các số liệu theo chiều ngang
hay chiều dọc
ð Tương tự như Pivot Table trong Excel
Tin quản lý 2 - Query 12
Dữ liệu thô Dữ liệu đã được tổng hợp theo tháng
Tin quản lý 2 - Query 13
Dữ liệu đã được phân tích, tổng hợp theo tháng cho từng mặt hàng
Tin quản lý 2 - Query 14
Cấu trúc của Crosstab
Giá trị nkGiá trị k1Tiêu đề dòng k
…
…
Giá trị 22
Tiêu đề 2
Tiêu đề dòng 2
Giá trị 11Tiêu đề dòng 1
Tiêu đề nTiêu đề 1
Value
Column Heading
Row Heading
Tin quản lý 2 - Query 15
Cấ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ị nkGiá trị k1Tiêu đề dòng k
…
…
Giá trị 22
Tiêu đề 2
Tiêu đề dòng 2
Giá trị 11Tiêu đề dòng 1
Tiêu đề nTiêu đề 1
Tin 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
Tin quản lý 2 - Query 17
Ví 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
Tin quản lý 2 - Query 18
Ví dụ 1 (tiếp)
Các trường làm tiêu
đề thường chọn gộp
nhóm (Groupby)
Trường dữ liệu
phân tích chọn 1 
hàm gộp nhóm
Chỉ định cấu trúc
của Crosstab
Tin quản lý 2 - Query 19
Ví 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
Tin 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
Tin quản lý 2 - Query 21
Mộ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
ACTION QUERY
Tin quản lý 2 - Query 23
Action 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
Tin quản lý 2 - Query 24
UPDATE QUERY – VÍ DỤ
¡ Đơn giá của các mặt hàng thuộc loại Rượu
hay Bia đều được tăng lên 20%.
¡ Phân tích
l Bảng được cập nhật: Hàng hóa
l Bản ghi được cập nhật: Mặt hàng thuộc loại
Rượu hay Bia.
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
Tin quản lý 2 - Query 25
Tin 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
thiết kế
q Trường cần
thay đổi
q Trường chứa
điều kiện giới
hạn bản ghi
được cập nhật
Tin quản lý 2 - Query 27
DELETE QUERY
¡ Xóa thông tin về các mặt
hàng có Đơn giá<2000.
¡ Phân tích
l Bảng sẽ thay đổi: Hàng hóa
l Các bản ghi bị xóa: 
Dongia<2000
l Loại query: Delete query
Trường chứa điều
kiện giới hạn bản
ghi để xóa
Tin 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
tên Nam.
¡ Phân tích
l Bảng thay đổi: 
CTHoadon
l Các bản ghi bị xóa: 
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 đó
Tin quản lý 2 - Query 29
APPEND 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
…
…
…
BẢNG DỮ LIỆU ĐÍCH
…
…
…
APPEND
QUERY
¡ 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
Tin 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
Tin quản lý 2 - Query 31
Append 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

File đính kèm:

  • pdfBài giảng Tin quản lý 2 - Thiết kế các kiểu truy vấn khác.pdf