2. Ràng buô ̣c trên nhiều quan
4.7 Yêu cầu từ nghiê ̣p v ụ quản lý công nợ 42.
b.7.1 Lâ ̣p danh sách các hóa đơn còn nợ công ty phát sinh trong tháng 3 năm 2008. Danh sách gồm có mã hóa đơn, số tiền còn nợ, ngày he ̣n.
HoaDon AS HD ON CNB.MaHD = HD.MaHD
WHERE (MONTH(HD.NgayLap) = '3') AND (YEAR(HD.NgayLap) = '2008')
b.7.3 Lâ ̣p danh sách các khách hàng còn nợ tiền công ty. Danh sách gồm có mã khách hàng, tên khách hàng, đi ̣a chỉ, điên thoa ̣i, tổng số tiền nợ
SELECT KH.MaKH, KH.Ten, KH.NgaySinh, KH.DiaChi, KH.DienThoai, SUM(CNB.SoTien) AS TongSoTienNo
FROM KhachHang AS KH INNER JOIN
HoaDon AS HD ON KH.MaKH = HD.MaKH INNER JOIN CongNoBan AS CNB ON HD.MaHD = CNB.MaHD
GROUP BY KH.MaKH, KH.Ten, KH.NgaySinh, KH.DiaChi, KH.DienThoai
b.7.5 Lâ ̣p danh các hóa đơn đã quá he ̣n thanh toán. Danh sách gồm có mã hóa đơn, mã khách hàng, tổng giá tri ̣ hóa đơn, số tiền còn nợ, ngày he ̣n
thanh toán, số ngày trễ he ̣n thanh toán.
SELECT HD.MaHD, HD.MaKH, HD.TongGiaTri, CNB.SoTien AS SoTienConNo, CNB.NgayHen, DATEDIFF(Day, CNB.NgayHen, { fn NOW() }) AS
NgayTreHen
FROM HoaDon AS HD INNER JOIN
CongNoBan AS CNB ON HD.MaHD = CNB.MaHD WHERE (CNB.NgayHen < { fn NOW() })
b.7.6 Lâ ̣p danh các phiếu nhâ ̣p đã quá he ̣n thanh toán. Danh sách gồm có mã phiếu nhâ ̣p, mã nhà cung cấp, tổng giá tri ̣, số tiền còn nợ, ngày he ̣n thanh toán, số ngày trễ he ̣n thanh toán.
SELECT PNH.MaPN, PNH.MaNCC, PNH.TongGiaTri, CNN.SoTien AS SoTienConNo, DATEDIFF(Day, CNN.NgayHen, { fn NOW() }) AS SoNgayTre
FROM PhieuNhapHang AS PNH INNER JOIN
CongNoNhap AS CNN ON PNH.MaPN = CNN.MaPN WHERE (CNN.NgayHen < { fn NOW() })
1 đến 15 ngày nữa là đến ngày he ̣n thanh toán). Danh sách gồm có mã phiếu nhâ ̣p, tên nhà cung cấp, tổng giá tri ̣, số tiền còn nợ, ngàyđến hẹn, số ngày còn .
SELECT PNH.MaPN, PNH.MaNCC, PNH.TongGiaTri, CNN.SoTien AS SoTienConNo, CNN.NgayHen, DATEDIFF(Day, { fn NOW() }, CNN.NgayHen) AS SoNgayCon
FROM PhieuNhapHang AS PNH INNER JOIN
CongNoNhap AS CNN ON PNH.MaPN = CNN.MaPN
WHERE (DATEDIFF(Day, { fn NOW() }, CNN.NgayHen) >= 1) AND (DATEDIFF(Day, { fn NOW() }, CNN.NgayHen) <= 15)
b.7.8 Tính tổng số tiền khách hàng còn nợ công ty, số tiền công ty nợ nhà cung cấp.Tính tổng dư nợ của doanh nghiê ̣p(tổng số tiền khách hàng nợ công ty - tổng số tiền công ty nơ ̣ nà cung cấp).
SELECT HTH.SoTienKhachNo, HHH.SoTienNoNCC, HTH.SoTienKhachNo – HHH.SoTienNoNCC AS DuNo
FROM (SELECT SUM(SoTien) AS SoTienKhachNo, '0' AS Tam FROM CongNoBan) AS HTH INNER JOIN
(SELECT SUM(SoTien) AS SoTienNoNCC, '0' AS Tam
FROM CongNoNhap) AS HHH ON HTH.Tam = HHH.Tam