Yều cầu từ các nghiê ̣p v ụ bán hàng 30.

Một phần của tài liệu Quản lý hoạt động kinh doanh của công ty Phong Vũ (Trang 30 - 36)

2. Ràng buô ̣c trên nhiều quan

4.3Yều cầu từ các nghiê ̣p v ụ bán hàng 30.

b.3.4 Lâp danh sách khối lượng giao di ̣ch của khách hàng có mã là x. Danh sách gồm mã khách hàng, ho ̣ tên, tổng khối lượng giao di ̣ch

TongKhoiLuongGiaoDich

FROM KhachHang AS KH INNER JOIN

HoaDon AS HD ON KH.MaKH = HD.MaKH

WHERE (HD.MaKH = 'KH10') GROUP BY KH.MaKH, KH.Ten

b.3.5 Lâ ̣p danh sách những hóa đơn đã thanh toán . Danh sách gồm có mã hoá đơn, mã nhân viên, mã khách hàng ,ngày lập, tổng giá trị

SELECT MaHD, MaNV, MaKH, NgayLap, TongGiaTri

FROM (SELECT MaHD, MaNV, MaKH, NgayLap, ISNULL(SoTien, 0) AS SoTienNo, TongGiaTri, SoTien, NgayHen

FROM (SELECT HD.MaHD, HD.MaNV, HD.MaKH, HD.NgayLap,

HD.TongGiaTri, CNB.MaCNB, CNB.SoTien, CNB.NgayHen

FROM HoaDon AS HD LEFT OUTER JOIN

CongNoBan AS CNB ON HD.MaHD = CNB.MaHD) ) WHERE (SoTienNo = '0')

b.3.7 Lâ ̣p danh sách mă ̣t hàng có số lượng bán nhiều nhất trong năm 2008. Danh sách gồm mã hàng, tên hàng, số lượng bán.

SELECT MaHang, TenHang, SoLuongBan

FROM (SELECT HH.MaHang, HH.TenHang, SUM(CTHD.SoLuong) AS

SoLuongBan

FROM HangHoa AS HH INNER JOIN

ChiTietHoaDon AS CTHD ON HH.MaHang = CTHD.MaHang GROUP BY HH.MaHang, HH.TenHang

WHERE (SoLuongBan >= ALL (SELECT SoLuongBan

FROM (SELECT HH.MaHang, HH.TenHang,

SUM(CTHD.SoLuong) AS SoLuongBan FROM HangHoa AS HH INNER JOIN

ChiTietHoaDon AS CTHD ON HH.MaHang = CTHD.MaHang

GROUP BY HH.MaHang, HH.TenHang)))

b.3.8 Lâ ̣p bảng thống kê các mă ̣t hàng đuợc bán ra năm 2008. Danh sách gồm có mã hàng, tên hàng, tổng số lượng bán, doanh thu, lợi nhuâ ̣n từ các mă ̣t hàng đó.

SELECT HH.MaHang, HH.TenHang, SUM(CTHD.SoLuong) AS TongSoLuong, SUM(CTHD.SoLuong * CTHD.DonGia) AS DoanhThu,

SUM((CTHD.DonGia - HH.DonGia) * CTHD.SoLuong) AS LoiNhuan FROM HangHoa AS HH INNER JOIN

ChiTietHoaDon AS CTHD ON HH.MaHang = CTHD.MaHang INNER JOIN HoaDon AS HD ON CTHD.MaHD = HD.MaHD

WHERE (YEAR(HD.NgayLap) = '2008') GROUP BY HH.MaHang, HH.TenHang

b.3.9 Lâ ̣p danh sách mă ̣t hàng mang la ̣i nhiều lợi nhuâ ̣n nhất cho công ty. Danh sách gồm mã hàng, tên hàng, lợi nhuâ ̣n

SELECT MaHang, TenHang, LoiNhuan

FROM (SELECT HH.MaHang, HH.TenHang, SUM((CTHD.DonGia – HH.DonGia) * CTHD.SoLuong) AS LoiNhuan FROM HangHoa AS HH INNER JOIN (adsbygoogle = window.adsbygoogle || []).push({});

ChiTietHoaDon AS CTHD ON HH.MaHang = CTHD.MaHang GROUP BY HH.MaHang, HH.TenHang)

WHERE (LoiNhuan >= ALL (SELECT LoiNhuan

LoiNhuan

FROM HangHoa AS HH INNER JOIN

ChiTietHoaDon AS CTHD ON HH.MaHang = CTHD.MaHang

GROUP BY HH.MaHang, HH.TenHang)))

b.3.10 Tính doanh thu và lợi nhuân của công ty trong năm 2008.

SELECT SUM(CTHD.DonGia * CTHD.SoLuong) AS DoanhThu,

SUM((CTHD.DonGia - HH.DonGia) * CTHD.SoLuong) AS LoiNhuan FROM HangHoa AS HH INNER JOIN

ChiTietHoaDon AS CTHD ON HH.MaHang = CTHD.MaHang INNER JOIN HoaDon AS HD ON CTHD.MaHD = HD.MaHD

WHERE (YEAR(HD.NgayLap) = '2008')

b.3.11 Lâ ̣p bảng thống kê doanh, thu lợi nhuâ ̣n của từng tháng của năm 2008. Danh sách gồm có tháng, doanh thu, lợi nhuâ ̣n.

SELECT Thang, SUM(DonGiaBan * SoLuong) AS DoanhThu, SUM((DonGiaBan - DonGia) * SoLuong) AS LoiNhuan

FROM (SELECT HH.DonGia, CTHD.DonGia AS DonGiaBan, CTHD.SoLuong, MONTH(HD.NgayLap) AS Thang

FROM HangHoa AS HH INNER JOIN

ChiTietHoaDon AS CTHD ON HH.MaHang = CTHD.MaHang INNER JOIN HoaDon AS HD ON CTHD.MaHD = HD.MaHD WHERE (YEAR(HD.NgayLap) = '2008')) AS derivedtbl_1

GROUP BY Thang

b.3.12 Lâ ̣p danh sách

các mă ̣t hàng mà khách hàng có mãkh là x đã mua

Danh sách gồm có mã hàng, tên hàng, số lượng, số tiền bỏ ra để mua mă ̣t hàng đó

SELECT HH.MaHang, HH.TenHang, SUM(CTHD.SoLuong) AS TongSoLuong, SUM(CTHD.SoLuong * CTHD.DonGia) AS TongGiaTri

FROM HangHoa AS HH INNER JOIN

ChiTietHoaDon AS CTHD ON HH.MaHang = CTHD.MaHang INNER JOIN HoaDon AS HD ON CTHD.MaHD = HD.MaHD

WHERE (HD.MaKH = 'KH10') GROUP BY HH.MaHang, HH.TenHang

b.3.13 Tìm ra tháng trong năm 2008 mà công ty có lợi nhuận lớn nhất

SELECT Thang, LoiNhuan

FROM (SELECT Thang, SUM((DonGiaBan - DonGia) * SoLuong) AS LoiNhuan FROM (SELECT HH.DonGia, CTHD.DonGia AS DonGiaBan,

CTHD.SoLuong, MONTH(HD.NgayLap) AS Thang FROM HangHoa AS HH INNER JOIN

ChiTietHoaDon AS CTHD ON HH.MaHang = CTHD.MaHang INNER JOIN

HoaDon AS HD ON CTHD.MaHD = HD.MaHD (adsbygoogle = window.adsbygoogle || []).push({});

WHERE (YEAR(HD.NgayLap) = '2008')) GROUP BY Thang)

WHERE (LoiNhuan >= ALL (SELECT LoiNhuan

FROM (SELECT Thang, SUM((DonGiaBan - DonGia) * SoLuong) AS LoiNhuan

FROM (SELECT HH.DonGia, CTHD.DonGia AS

DonGiaBan, CTHD.SoLuong, MONTH(HD.NgayLap) AS Thang

FROM HangHoa AS HH INNER JOIN ChiTietHoaDon AS CTHD ON

HH.MaHang = CTHD.MaHang INNER JOIN HoaDon AS HD ON CTHD.MaHD = HD.MaHD WHERE (YEAR(HD.NgayLap) = '2008'))

GROUP BY Thang)))

b.3.14 Tính tháng có nhiều khách hàng đến mua hàng nhất.

SELECT Thang, SoKhachHang

FROM (SELECT DISTINCT MONTH(NgayLap) AS Thang, MaKH FROM HoaDon)

GROUP BY Thang) WHERE (SoKhachHang >= ALL (SELECT SoKhachHang

FROM (SELECT Thang, COUNT(MaKH) AS SoKhachHang FROM (SELECT DISTINCT MONTH(NgayLap) AS

Thang, MaKH

FROM HoaDon) GROUP BY Thang)))

b.3.15 Lập danh sách top 5 mặt hàng thu về nhiều lợi nhuận cho công ty nhất. danh sách gồm mã hàng, tên hàng, lợi nhuâ ̣n.

SELECT TOP (5) MaHang, TenHang, LoiNhuan

FROM (SELECT HH.MaHang, HH.TenHang, SUM((CTHD.DonGia – HH.DonGia) * CTHD.SoLuong) AS LoiNhuan

FROM HangHoa AS HH INNER JOIN

ChiTietHoaDon AS CTHD ON HH.MaHang = CTHD.MaHang GROUP BY HH.MaHang, HH.TenHang)

ORDER BY LoiNhuan DESC

b.3.16 Lập bảng thống kê doanh thu, lợi nhuận của công ty theo khu vực địa lý(khu vưc địa lý theo địa chỉ của khách hàng)

SELECT KH.DiaChi AS KhuVuc, SUM(CTHD.SoLuong * CTHD.DonGia) AS DoanhThu, SUM((CTHD.DonGia - HH.DonGia) * CTHD.SoLuong) AS LoiNhuan

FROM KhachHang AS KH INNER JOIN

HoaDon AS HD ON KH.MaKH = HD.MaKH INNER JOIN

ChiTietHoaDon AS CTHD ON HD.MaHD = CTHD.MaHD INNER JOIN HangHoa AS HH ON CTHD.MaHang = HH.MaHang

b.3.17 Lập danh sách những hóa đơn đã thanh toán. Danh sách gồm mã hóa đơn, mã nhân viên, mã khách hàng,ngày lập,tổng giá trị, lợi nhuận.

SELECT MaHD, MaNV, MaKH, NgayLap, TongGiaTri, LoiNhuan

FROM (SELECT HTH.MaHD, HTH.MaNV, HTH.MaKH, HTH.NgayLap, HTH.TongGiaTri, HTH.LoiNhuan, ISNULL(CNB.SoTien, 0) AS SoTienNo FROM (SELECT HD.MaHD, HD.MaNV, HD.MaKH, HD.NgayLap,

SUM(CTHD.DonGia * CTHD.SoLuong) AS TongGiaTri, SUM((CTHD.DonGia - HH.DonGia) * CTHD.SoLuong) (adsbygoogle = window.adsbygoogle || []).push({});

AS LoiNhuan

FROM HoaDon AS HD INNER JOIN

ChiTietHoaDon AS CTHD ON HD.MaHD = CTHD.MaHD

INNER JOINHangHoa AS HH ON CTHD.MaHang =

HH.MaHang

GROUP BY HD.MaHD, HD.MaNV, HD.MaKH, HD.NgayLap) AS HTH LEFT OUTER JOIN CongNoBan AS CNB ON HTH.MaHD = CNB.MaHD)

WHERE (SoTienNo = '0')

Một phần của tài liệu Quản lý hoạt động kinh doanh của công ty Phong Vũ (Trang 30 - 36)