Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [SQL Server] Thống kê đơn theo trạng thái phổ biến

    Quán cơm văn phòng Cơm Nhà 36 ở Hai Bà Trưng nhận đơn online, lưu trong bảng donhang:

    Cột Kiểu Ý nghĩa
    ma INT mã đơn
    trangthai VARCHAR(20) trạng thái đơn ('moi', 'dangnau', 'dagiao', 'huy')
    tongtien INT tổng tiền (đồng)

    Hãy thống kê theo từng trạng thái: số đơn và tổng tiền — nhưng chỉ giữ những trạng thái có từ 2 đơn trở lên.

    Ví dụ: nếu trạng thái 'huy' chỉ có 1 đơn thì không xuất hiện trong kết quả.

    • Định dạng đầu vào:

      SETUP SQL tạo bảng donhang và chèn dữ liệu.

    • Ràng buộc đầu vào:

      1≤1 \le1≤ số dòng ≤200\le 200≤200; 0≤tongtien≤1060 \le tongtien \le 10^60≤tongtien≤106 mỗi đơn.

    • Định dạng đầu ra:

      Mỗi dòng gồm 3 cột: trangthai, sodon, tongtien — sắp xếp theo trangthai tăng dần. Có thể không có dòng nào.

    Ví dụ:

    Đầu vào:

    CREATE TABLE donhang (ma INT, trangthai VARCHAR(20), tongtien INT);
    INSERT INTO donhang VALUES (1, 'dagiao', 45000),(2, 'dagiao', 60000),(3, 'moi', 35000),(4, 'huy', 50000),(5, 'moi', 40000),(6, 'dagiao', 55000);

    Đầu ra:

    dagiao	3	160000
    moi	2	75000

    Giải thích:

    Nhóm 'dagiao' có 3 đơn tổng 160000, nhóm 'moi' có 2 đơn tổng 75000 — đều giữ lại. Nhóm 'huy' chỉ 1 đơn nên bị HAVING loại. Sắp theo trangthai: dagiao trước moi.

    Đang tải editor...