Cho lược đồ CSDL quản lý bán hàng
KHACHHANG (MAKH, HOTEN, DCHI, SODT, TONGTIENMUA)
Tân từ: Mỗi khách hàng sẽ có một mã số (MAKH) để phân biệt với nhau, cần lưu trữ họ
tên, địa chỉ, số điện thoại và tổng tiền mua của khách hàng (tổng trị giá các hóa đơn mà
khách hàng đã mua)
SANPHAM (MASP,TENSP, DVT, NUOCSX, DONGIA)
Tân từ: Mỗi sản phẩm có một mã số (MASP), một tên gọi, đơn vị tính, nước sản xuất và
một đơn giá bán.
HOADON (SOHD, NGHD, MAKH, TRIGIA)
Tân từ: Mỗi lần mua hàng sẽ ghi nhận số hóa đơn (SOHD), ngày mua (NGHD), trị giá
(TRIGIA) của hóa đơn và khách hàng (MAKH) nào mua.
CTHD (SOHD,MASP,SL)
Tân từ: Diễn giải chi tiết trong mỗi hóa đơn gồm có những sản phẩm gì với số lượng là
bao nhiêu.
Câu 1: Mô tả chặt chẽ ràng buộc sau: (1 điểm)
Tổng tiền mua của khách hàng bằng tổng trị giá các lần mua hàng (hóa đơn) của khách
hàng đó.
2 trang |
Chia sẻ: candy98 | Lượt xem: 539 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Bộ đề môn Cơ sở dữ liệu - Tổng hợp đề 7, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
ĐỀ THI SỐ 7
Cho lược đồ CSDL quản lý bán hàng
KHACHHANG (MAKH, HOTEN, DCHI, SODT, TONGTIENMUA)
Tân từ: Mỗi khách hàng sẽ có một mã số (MAKH) để phân biệt với nhau, cần lưu trữ họ
tên, địa chỉ, số điện thoại và tổng tiền mua của khách hàng (tổng trị giá các hóa đơn mà
khách hàng đã mua)
SANPHAM (MASP,TENSP, DVT, NUOCSX, DONGIA)
Tân từ: Mỗi sản phẩm có một mã số (MASP), một tên gọi, đơn vị tính, nước sản xuất và
một đơn giá bán.
HOADON (SOHD, NGHD, MAKH, TRIGIA)
Tân từ: Mỗi lần mua hàng sẽ ghi nhận số hóa đơn (SOHD), ngày mua (NGHD), trị giá
(TRIGIA) của hóa đơn và khách hàng (MAKH) nào mua.
CTHD (SOHD,MASP,SL)
Tân từ: Diễn giải chi tiết trong mỗi hóa đơn gồm có những sản phẩm gì với số lượng là
bao nhiêu.
Câu 1: Mô tả chặt chẽ ràng buộc sau: (1 điểm)
Tổng tiền mua của khách hàng bằng tổng trị giá các lần mua hàng (hóa đơn) của khách
hàng đó.
Câu 2: Thực hiện câu truy vấn sau bằng đại số quan hệ: (1 điểm)
In ra danh sách các sản phẩm (mã sản phẩm, tên sản phẩm) được bán ra trong ngày 20
tháng 8 năm 2006, có đơn giá từ 10.000 đến 50.000 do “TrungQuoc” sản xuất.
Câu 3: Thực hiện câu truy vấn sau bằng ngôn ngữ SQL: (1.5 điểm)
a. Tìm số hóa đơn có trị giá cao nhất. (0.75 điểm)
b. Tính doanh số bán hàng (tổng các trị giá hóa đơn) của từng tháng trong năm
2005 (0.75 điểm)
* Chú ý: hàm month(Ngay), year(Ngay) để lấy tháng và năm của Ngay
ĐÁP ÁN ĐỀ SỐ 7
Câu 1: (1 điểm)
Nội dung: (0.5 điểm)
Tổng tiền mua của khác hàng bằng tổng trị giá các lần mua hàng (hóa đơn) của khách hàng đó.
k KHACHHANG,
k.TongTienMua = Sum(h HOADON h.Makh = k.Makh) (h.Trigia)
Cuối k
hoặc cách khác: k.TongTienMua = ∑(h HOADON h.Makh = k.Makh) (h.Trigia)
Bối cảnh: KHACHHANG, HOADON
Bảng tầm ảnh hưởng: (0.5 điểm)
Thêm Xóa Sửa
KHACHHANG
+ - +
(TongTienMua)
HOADON
+ + +
(TriGia, Makh)
Câu 2 In ra danh sách các sản phẩm (mã sản phẩm, tên sản phẩm) được bán ra trong ngày 20 tháng 8
năm 2006, có giá từ 10.000 đến 50.000 do “TrungQuoc” sản xuất.
Câu 2: (1 điểm)
((SANPHAM: (Nuocsx=‘TrungQuoc”)(10.000Gia50.000)) CTHD
(HOADON: Nghd=’20/10/2006’)) [Masp, Tensp]
Câu 3: Thực hiện câu truy vấn sau bằng ngôn ngữ SQL: (1.5 điểm)
a. Tìm số hóa đơn có trị giá cao nhất. (0.75 điểm)
b. Tính doanh số bán hàng (tổng các trị giá hóa đơn) của từng tháng trong năm 2005 (0.75 điểm)
Câu 3: (0.75 điểm)
a.
SELECT Sohd
FROM HOADON
WHERE Trigia = (Select max(Trigia) From HOADON)
SELECT Sohd
FROM HOADON
WHERE Trigia >= ALL (Select DISTINCT Trigia From HOADON)
b.
SELECT month(Nghd) as Thang, Sum(Trigia) as DoanhSo
FROM HOADON
WHERE year(Nghd)=2005
GROUP BY month(Nghd)
Sohd Masp