Tôi khuyên bạn nên sử dụng tổng hợp:
SELECT `Reg.No`, SubjectCode, SUM(`Pass/Fail` = 'Pass')
FROM results
GROUP BY `Reg.No`, SubjectCode
HAVING SUM(`Pass/Fail` = 'Pass') = 0;
HAVING mệnh đề đếm số kết quả cho mỗi sinh viên và khóa học trong đó cột cuối cùng là 'Pass' . Trong MySQL, boolean được coi là số nguyên trong ngữ cảnh số, với true là 1. Vì vậy, sum( Đạt / Không đạt = 'Pass') đếm số lần một học sinh đã vượt qua khóa học. = 0 nói rằng sinh viên không bao giờ vượt qua khóa học.
Theo gợi ý, không đặt các ký tự đặc biệt như / và . trong tên cột. Điều đó đòi hỏi phải thoát khỏi các cột và chỉ làm cho mã khó viết hơn vì nó chứa đầy các dấu gạch ngược.