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

    solution

    Đề bài: [SQL Server] Hóa đơn lớn nhất của từng khách

    Hệ thống Thế Giới Di Động muốn liệt kê hóa đơn có giá trị lớn nhất của mỗi khách hàng.

    Bảng hoadon:

    Cột Kiểu Ý nghĩa
    mahd INT Mã hóa đơn
    makh INT Mã khách
    giatri INT Giá trị hóa đơn (đồng)

    Với mỗi khách, chọn hóa đơn có giatri bằng giá trị lớn nhất của khách đó (dùng truy vấn con tương quan). Nếu một khách có nhiều hóa đơn cùng giá trị lớn nhất thì lấy tất cả. In mahd, makh, giatri.

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

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

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

      giatri ≥ 0. 1 ≤ số hóa đơn ≤ 1000.

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

      Mỗi dòng: mahd, makh, giatri. Sắp xếp theo makh tăng dần, mahd tăng dần.

    Ví dụ:

    Đầu vào:

    CREATE TABLE hoadon (mahd INT, makh INT, giatri INT);
    INSERT INTO hoadon VALUES
    (1, 10, 5000000),
    (2, 10, 8000000),
    (3, 10, 8000000),
    (4, 20, 3000000);

    Đầu ra:

    2	10	8000000
    3	10	8000000
    4	20	3000000

    Giải thích:

    Khách 10 có max 8tr với hai hóa đơn (mahd 2,3) đều được lấy. Khách 20 chỉ một hóa đơn 3tr là lớn nhất.

    Đang tải editor...