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

    solution

    Đề bài: [SQL Server] Lương vượt trung bình phòng mình

    Tập đoàn FDI Hưng Thịnh đánh giá mặt bằng thu nhập nội bộ qua bảng nhanvien:

    Cột Kiểu Ý nghĩa
    ma INT mã nhân viên
    ten NVARCHAR(100) họ tên
    phong VARCHAR(30) mã phòng ban
    luong INT lương tháng (triệu đồng)

    Hãy tìm các nhân viên có lương cao hơn mức lương trung bình của chính phòng họ (so sánh chặt, lớn hơn hẳn). Trung bình phòng phải tính theo số thực.

    Hệ quả thú vị: phòng chỉ có 1 người thì người đó không bao giờ được chọn (lương đúng bằng trung bình).

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

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

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

      1≤1 \le1≤ số dòng ≤300\le 300≤300; 5≤luong≤5005 \le luong \le 5005≤luong≤500 (triệu đồng).

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

      Mỗi dòng gồm 4 cột: ma, ten, phong, luong — sắp xếp theo phong tăng dần, rồi ma tăng dần. Có thể không có dòng nào.

    Ví dụ:

    Đầu vào:

    CREATE TABLE nhanvien (ma INT, ten NVARCHAR(100), phong VARCHAR(30), luong INT);
    INSERT INTO nhanvien VALUES (1, N'Ngo Thi Hoa', 'KD', 10),(2, N'Pham Van Long', 'KD', 20),(3, N'Tran Thi Nhan', 'KD', 30),(4, N'Le Van Quang', 'KT', 15),(5, N'Hoang Thi Thu', 'KT', 15),(6, N'Vu Van Toan', 'NS', 12);

    Đầu ra:

    3	Tran Thi Nhan	KD	30

    Giải thích:

    Phòng KD trung bình 20 — chỉ Nhan (30) vượt. Phòng KT trung bình 15 — cả hai bằng trung bình, không ai vượt chặt. Phòng NS một người, lương bằng trung bình nên loại.

    Đang tải editor...