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

    solution

    Đề bài: [SQL Server] Sản phẩm bán trên mức trung bình toàn hệ thống

    Bảng banra ghi số lượng bán của từng sản phẩm. Cần liệt kê các sản phẩm có số lượng bán lớn hơn trung bình của toàn bộ sản phẩm (dùng subquery), kèm chênh lệch so với trung bình.

    Cột Kiểu Ý nghĩa
    ma nvarchar(20) Mã sản phẩm
    sl int Số lượng bán

    Cột tren_tb = sl − trung bình (làm tròn 2 chữ số). Chỉ lấy sản phẩm có sl > trung bình toàn hệ thống.

    Ví dụ các sl 10, 20, 30 (trung bình 20) thì chỉ sản phẩm sl=30 được chọn, tren_tb = 10.00.

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

      SETUP SQL tạo bảng banra và chèn số lượng bán của các sản phẩm.

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

      sl ≥ 0. ma là duy nhất. So sánh với AVG dạng số thực.

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

      Ba cột: ma, sl, tren_tb (DECIMAL 2 chữ số). Sắp xếp theo sl giảm dần, rồi ma tăng dần.

    Ví dụ:

    Đầu vào:

    CREATE TABLE banra (ma nvarchar(20), sl int);
    INSERT INTO banra VALUES (N'SP1',10),(N'SP2',20),(N'SP3',30);

    Đầu ra:

    SP3	30	10.00

    Giải thích:

    Trung bình = (10+20+30)/3 = 20. Chỉ SP3 (30) lớn hơn trung bình nên được chọn, tren_tb = 30 - 20 = 10.00.

    Đang tải editor...