Hệ thống quản lý của chuỗi cửa hàng GHN Mart cần bảng tổng hợp: mỗi cửa hàng một dòng với số đơn ở ba trạng thái cho (chờ xử lý), giao (đã giao), huy (đã hủy). Bài này yêu cầu không dùng toán tử PIVOT mà xoay bảng thủ công bằng SUM(CASE ... END).
Bảng donhang:
| Cột | Kiểu | Ý nghĩa |
|---|---|---|
| madon | int | Mã đơn (khóa) |
| macuahang | varchar(10) | Mã cửa hàng |
| trangthai | varchar(10) | 'cho', 'giao' hoặc 'huy' |
Cửa hàng S1 có 2 đơn giao, 1 đơn hủy, 0 đơn chờ thì in S1 0 2 1.
Script T-SQL tạo bảng donhang và chèn dữ liệu.
1≤ số dòng ≤2000; trangthai chỉ nhận một trong ba giá trị 'cho', 'giao', 'huy'.
SELECT in macuahang, socho, sogiao, sohuy, sắp xếp theo macuahang tăng dần.
Ví dụ:
Đầu vào:
CREATE TABLE donhang (madon int, macuahang varchar(10), trangthai varchar(10));
INSERT INTO donhang VALUES (1,'S1','giao'),(2,'S1','giao'),(3,'S1','huy'),(4,'S2','cho'),(5,'S2','giao');
Đầu ra:
S1 0 2 1
S2 1 1 0
Giải thích:
Đang tải editor...