Hệ thống bán hàng có 5 bảng liên kết. Cần lập báo cáo: với mỗi dòng chi tiết đơn, hiển thị tên khách, tên sản phẩm, tên kho và thành tiền.
| Bảng | Cột chính | Ý nghĩa |
|---|---|---|
| khach | makh, tenkh | Khách hàng |
| don | madon, makh | Đơn hàng |
| chitiet | madon, masp, soluong, makho | Dòng chi tiết |
| sanpham | masp, tensp, dongia | Sản phẩm |
| kho | makho, tenkho | Kho xuất |
thanhtien = soluong × dongia. JOIN cả 5 bảng (INNER).
SETUP SQL tạo 5 bảng khach, don, chitiet, sanpham, kho và chèn dữ liệu.
Mọi khóa ngoại đều khớp. thanhtien = soluong * dongia.
Năm cột: tenkh, tensp, tenkho, soluong, thanhtien. Sắp xếp theo tenkh, tensp, tenkho tăng dần.
Ví dụ:
Đầu vào:
CREATE TABLE khach (makh int, tenkh nvarchar(50));
CREATE TABLE don (madon int, makh int);
CREATE TABLE chitiet (madon int, masp int, soluong int, makho int);
CREATE TABLE sanpham (masp int, tensp nvarchar(50), dongia int);
CREATE TABLE kho (makho int, tenkho nvarchar(50));
INSERT INTO khach VALUES (1,N'An');
INSERT INTO don VALUES (10,1);
INSERT INTO chitiet VALUES (10,100,2,1000);
INSERT INTO sanpham VALUES (100,N'But',5);
INSERT INTO kho VALUES (1000,N'Kho HN');
Đầu ra:
An But Kho HN 2 10
Giải thích:
Đang tải editor...