Bài tập Tin học Lớp 12: Quản lý bán sách

1. Tao cac bang da cho:

- Tạo bảng SACH:

Create table SACH (MaS char(6) Primary key, TenS char(30), NhaXuatBan char(30), SoLuong integer, DonGia integer);

- Tao bang HOA_DON:

Create table HOA_DON (SoHD byte Primary key, NgayLap Date, TenNV char(30), MaKH char(6) references KHACH_HANG (MaKH));

- Tao bang CHI_TIET_HD:

Create table CHI_TIET_HD ( SoHD byte references HOA_DON (SoHD), SoLuong integer, DonGia integer, MaS char(6) references SACH (MaS), Primary key (SoHD,MaS));

- Tao bang KHACH_HANG:

Create table KHACH_HANG ( MaKH char(6) Primary key, TenKH char(30), DiaChi char(40), DienThoai integer);

2. Thực hiện các câu truy vấn để đưa ra:

a) MaKH, TenKH của khách hàng mua sách trong ngày 3/2/2006

SELECT HOA_DON.MaKH, TenKH

FROM KHACH_HANG KH, HOA_DON HD

WHERE KH.MaKH=HD.MaKH and NgayLap=#3/2/2006#;

 

 

doc3 trang | Chia sẻ: lethuong715 | Lượt xem: 438 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Bài tập Tin học Lớp 12: Quản lý bán sách, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
BÀI LÀM:
Tao cac bang da cho:
Tạo bảng SACH:
Create table SACH (MaS char(6) Primary key, TenS char(30), NhaXuatBan char(30), SoLuong integer, DonGia integer);
Tao bang HOA_DON:
Create table HOA_DON (SoHD byte Primary key, NgayLap Date, TenNV char(30), MaKH char(6) references KHACH_HANG (MaKH));
Tao bang CHI_TIET_HD:
Create table CHI_TIET_HD ( SoHD byte references HOA_DON (SoHD), SoLuong integer, DonGia integer, MaS char(6) references SACH (MaS), Primary key (SoHD,MaS));
Tao bang KHACH_HANG:
Create table KHACH_HANG ( MaKH char(6) Primary key, TenKH char(30), DiaChi char(40), DienThoai integer);
Thực hiện các câu truy vấn để đưa ra:
MaKH, TenKH của khách hàng mua sách trong ngày 3/2/2006
SELECT HOA_DON.MaKH, TenKH
FROM KHACH_HANG KH, HOA_DON HD
WHERE KH.MaKH=HD.MaKH and NgayLap=#3/2/2006#;
Tổng tiền bán được của cuốn sách có tên là “Cơ sở dữ liệu”. Đưa ra TenS và Tổng Tiền (Trường TongTien tự đặt).
Lệnh tạo trường TongTien:
Alter table CHI_TIET_HD add TongTien integer;
Lệnh đưa ra TenS và Tổng tiền:
Select TenS, Sum(TongTien) As Tong_Tien 
From SACH S, CHI_TIET_HD CTHD
Where S.MaS=CTHD.MaS and TenS= “Cơ sở dữ liệu” 
Group by TenS;
Danh sách nhân viên lập nhiều hoá đơn bán sách nhất.
Select TenNV, Count(*) As So_HD
From HOA_DON Group by TenNV
Having Count(*)>=All (select Count(*) From HOA_DON Group by TenNV);
Số lượng bán ra của từng đầu sách trong năm 2005. Yêu cầu đưa ra MaS, TenS, LuongBan (trường LuongBan tự đặt)
SELECT CHI_TIET_HD.MaS, TenS, Sum(CHI_TIET_HD.SoLuong) AS LuongBan
FROM SACH, HOA_DON, CHI_TIET_HD
WHERE SACH.MaS=CHI_TIET_HD.MaS and CHI_TIET_HD.SoHD=HOA_DON.SoHD and Year(NgayLap)=2005
GROUP BY CHI_TIET_HD.MaS, TenS;
Tổng tiền bán được trong từng tháng của năm 2004 và năm 2005. Yêu cầu đưa ra năm (Nam), Tháng (Thang) và tổng tiền bán được ứng với từng tháng của năm (TongTien) ( Cac trường Nam, Thang, TongTien tự đặt)
Select Month(NgayLap) As Thang, Year(NgayLap) As Nam, Sum(TongTien) As Tong_Tien
From CHI_TIET_HD CTHD, HOA_DON HD 
Where CTHD.SoHD=HD.SoHD and (Year(NgayLap)=2004 or Year(NgayLap)=2005)
Group by Month(NgayLap), Year(NgayLap);
Khách hàng tiềm năng của công ty (khách hàng có mua sách với số lượng lớn nhất). Yêu cầu đưa ra MaKH, TenKH, LuongMua ( trường LuongMua tự đặt)
Select HOA_DON.MaKH, TenKH, Sum(SoLuong) As LuongMua
From KHACH_HANG, HOA_DON, CHI_TIET_HD
Where KHACH_HANG.MaKH=HOA_DON.MaKH and
HOA_DON.SoHD=CHI_TIET_HD.SoHD
Group by HOA_DON.MaKH, TenKH
Having Sum(SoLuong)>=All(select Sum(SoLuong) From KHACH_HANG, HOA_DON, CHI_TIET_HD Where KHACH_HANG.MaKH=HOA_DON.MaKH and HOA_DON.SoHD=CHI_TIET_HD.SoHD
Group by HOA_DON.MaKH, TenKH);
Danh sách hoá đơn và số lượng sách ứng với từng hoá đơn được lập năm 2005. Yêu cầu đưa ra SoHD, NgayLap, SoLuongSach (trường SoLuongSach tự đặt)
SELECT HOA_DON.SoHD, NgayLap, Sum(SoLuong) AS SoLuongSach
FROM HOA_DON, CHI_TIET_HD
WHERE HOA_DON.SoHD=CHI_TIET_HD.SoHD and Year(NgayLap)=2005
GROUP BY HOA_DON.SoHD, NgayLap;

File đính kèm:

  • docQuản lý bán sách_Bài làm.doc