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

    solution

    Đề bài: [SQL Server] Khoa bệnh viện có giá khám đồng đều

    Bệnh viện muốn tìm các khoa mà chênh lệch giữa giá khám cao nhất và thấp nhất không vượt quá 50 nghìn (giá đồng đều).

    Dùng HAVING với MAX - MIN.

    Cột Kiểu Ý nghĩa
    khoa nvarchar Tên khoa
    giakham int Giá khám (nghìn đồng)

    Ví dụ: khoa có giá từ 100 đến 140 (chênh 40) sẽ được chọn.

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

      Bảng dich_vu_kham.

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

      Chênh lệch <= 50. Sắp xếp theo khoa.

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

      Các cột khoa, MAX-MIN AS chenh_lech.

    Ví dụ:

    Đầu vào:

    CREATE TABLE dich_vu_kham (khoa nvarchar(20), giakham int);
    INSERT INTO dich_vu_kham VALUES (N'Noi',100),(N'Noi',140),(N'Ngoai',100),(N'Ngoai',300),(N'Nhi',80),(N'Nhi',80);

    Đầu ra:

    Nhi	0
    Noi	40

    Giải thích:

    Noi chenh = 140-100 = 40 <= 50 chon. Ngoai chenh = 300-100 = 200 > 50 loai. Nhi chenh = 80-80 = 0 chon. Ket qua sap theo khoa: Nhi(0), Noi(40).

    Đang tải editor...