Sàn TMĐT cần báo cáo chi tiết: tên khách, tên sản phẩm, số lượng, thành tiền của từng dòng đơn. Dữ liệu trải trên bốn bảng.
| Bảng | Cột | Kiểu | Ý nghĩa |
|---|---|---|---|
| khachhang | ma_kh, ho_ten | INT, VARCHAR | Khách hàng |
| donhang | ma_don, ma_kh | INT, INT | Đơn của khách |
| chitiet | ma_don, ma_sp, so_luong | INT,INT,INT | Dòng đơn |
| sanpham | ma_sp, ten_sp, gia | INT,VARCHAR,INT | Sản phẩm |
Thành tiền = so_luong × gia.
SETUP SQL tạo 4 bảng và chèn dữ liệu.
Nối đủ bốn bảng theo khóa.
Các cột ho_ten, ten_sp, so_luong, thanh_tien; sắp theo ho_ten tăng, ten_sp tăng.
Ví dụ:
Đầu vào:
CREATE TABLE khachhang (ma_kh INT, ho_ten VARCHAR(100));
CREATE TABLE donhang (ma_don INT, ma_kh INT);
CREATE TABLE chitiet (ma_don INT, ma_sp INT, so_luong INT);
CREATE TABLE sanpham (ma_sp INT, ten_sp VARCHAR(100), gia INT);
INSERT INTO khachhang VALUES (1,'An'),(2,'Bao');
INSERT INTO donhang VALUES (10,1),(11,2);
INSERT INTO chitiet VALUES (10,100,2),(11,101,3);
INSERT INTO sanpham VALUES (100,'Ao',50000),(101,'Quan',80000);
Đầu ra:
An Ao 2 100000
Bao Quan 3 240000
Giải thích:
Đang tải editor...