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

    solution

    Đề bài: [MySQL] Môn học có nhiều giảng viên phụ trách

    Phòng Quản lý đào tạo Đại học Kinh tế Quốc dân rà soát các môn học được mở nhiều lớp học phần. Cần tìm những môn do ít nhất 2 giảng viên khác nhau phụ trách để tổ chức họp thống nhất đề cương.

    Bảng lop_hoc_phan:

    Cột Kiểu Ý nghĩa
    ma_lop INT Mã lớp học phần (duy nhất)
    mon VARCHAR(100) Tên môn học
    giang_vien VARCHAR(100) Giảng viên phụ trách lớp
    si_so INT Sĩ số lớp

    Với mỗi môn thỏa điều kiện, in mon, so_gv (số giảng viên phân biệt) và tong_sv (tổng sĩ số các lớp của môn). Sắp xếp theo mon tăng dần.

    Ví dụ. Với dữ liệu: (1, 'CSDL', 'Nguyen Van A', 40), (2, 'CSDL', 'Tran Thi B', 35), (3, 'Lap trinh', 'Nguyen Van A', 50), (4, 'Mang may tinh', 'Le Van C', 30), (5, 'Mang may tinh', 'Le Van C', 45) thì kết quả là:

    CSDL	2	75
    

    Môn Mạng máy tính tuy có 2 lớp nhưng cùng một giảng viên nên không tính.

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

      Một kịch bản SQL gồm các lệnh CREATE TABLE và INSERT tạo dữ liệu cho bảng lop_hoc_phan.

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

      Số dòng của bảng ≤200\le 200≤200; 0≤si_so≤2000 \le si\_so \le 2000≤si_so≤200.

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

      Mỗi dòng gồm mon, so_gv, tong_sv cách nhau bởi ký tự TAB, không có dòng tiêu đề.

    Ví dụ:

    Đầu vào:

    CREATE TABLE lop_hoc_phan (ma_lop INT, mon VARCHAR(100), giang_vien VARCHAR(100), si_so INT);
    INSERT INTO lop_hoc_phan VALUES (1, 'CSDL', 'Nguyen Van A', 40), (2, 'CSDL', 'Tran Thi B', 35), (3, 'Lap trinh', 'Nguyen Van A', 50), (4, 'Mang may tinh', 'Le Van C', 30), (5, 'Mang may tinh', 'Le Van C', 45);

    Đầu ra:

    CSDL	2	75

    Giải thích:

    Môn CSDL có 2 giảng viên phân biệt (A và B) với tổng sĩ số 75 nên được liệt kê. Môn Mạng máy tính có 2 lớp nhưng chỉ 1 giảng viên, môn Lập trình chỉ có 1 lớp — cả hai bị loại.

    Đang tải editor...