Tập đoàn Viettel lập báo cáo doanh thu theo từng vùng và từng năm, đồng thời có dòng tổng cộng mỗi vùng (tất cả các năm).
Bảng baocao:
| Cột | Kiểu | Ý nghĩa |
|---|---|---|
| vung | NVARCHAR(20) | Vùng |
| nam | INT | Năm |
| doanhthu | BIGINT | Doanh thu (đồng) |
Dùng GROUP BY ROLLUP để tổng hợp theo (vung, nam) và có dòng tổng theo vung. Với dòng tổng (nam là NULL), in năm là 0. In vung, nam, tongdt.
SETUP SQL tạo bảng baocao và chèn dữ liệu.
1 ≤ số dòng ≤ 1000. doanhthu ≥ 0.
Mỗi dòng: vung, nam (0 nghĩa là tổng vùng), tongdt. Sắp xếp theo vung tăng dần, nam tăng dần (dòng tổng nam=0 đứng đầu mỗi vùng).
Ví dụ:
Đầu vào:
CREATE TABLE baocao (vung NVARCHAR(20), nam INT, doanhthu BIGINT);
INSERT INTO baocao VALUES
(N'Bac', 2022, 100),
(N'Bac', 2023, 200),
(N'Nam', 2023, 500);
Đầu ra:
Bac 0 300
Bac 2022 100
Bac 2023 200
Nam 0 500
Nam 2023 500
Giải thích:
Đang tải editor...