Chuỗi siêu thị MegaMart Việt Nam cần báo cáo cơ cấu doanh thu: mỗi ngành hàng chiếm bao nhiêu phần trăm tổng doanh thu toàn hệ thống.
Bảng ban_hang:
| Cột | Kiểu | Ý nghĩa |
|---|---|---|
| ma_don | INT | Mã đơn bán (duy nhất) |
| nganh | VARCHAR(50) | Ngành hàng |
| doanh_thu | INT | Doanh thu của đơn (đồng) |
Với mỗi ngành, hãy tính tong (tổng doanh thu của ngành) và ti_trong (phần trăm so với tổng toàn hệ thống, làm tròn 2 chữ số thập phân). Kết quả gồm nganh, tong, ti_trong, sắp xếp theo tong giảm dần, nếu bằng nhau theo nganh tăng dần. Dữ liệu luôn có tổng doanh thu toàn hệ thống lớn hơn 0.
Ví dụ. Với dữ liệu: (1, 'Dien tu', 600000), (2, 'Thoi trang', 300000), (3, 'Dien tu', 400000), (4, 'Gia dung', 100000) thì kết quả là:
Dien tu 1000000 71.43
Thoi trang 300000 21.43
Gia dung 100000 7.14
Một kịch bản SQL gồm các lệnh CREATE TABLE và INSERT tạo dữ liệu cho bảng ban_hang.
Số dòng của bảng ≤300; 0≤doanh_thu≤108; tổng doanh thu toàn bảng >0.
Mỗi dòng gồm nganh, tong, ti_trong cách nhau bởi ký tự TAB, không có dòng tiêu đề. ti_trong có đúng 2 chữ số thập phân.
Ví dụ:
Đầu vào:
CREATE TABLE ban_hang (ma_don INT, nganh VARCHAR(50), doanh_thu INT);
INSERT INTO ban_hang VALUES (1, 'Dien tu', 600000), (2, 'Thoi trang', 300000), (3, 'Dien tu', 400000), (4, 'Gia dung', 100000);
Đầu ra:
Dien tu 1000000 71.43
Thoi trang 300000 21.43
Gia dung 100000 7.14
Giải thích:
Đang tải editor...