Saya akan menyarankan menggunakan agregasi:
SELECT `Reg.No`, SubjectCode, SUM(`Pass/Fail` = 'Pass')
FROM results
GROUP BY `Reg.No`, SubjectCode
HAVING SUM(`Pass/Fail` = 'Pass') = 0;
HAVING
klausa menghitung jumlah hasil untuk setiap siswa dan kursus di mana kolom terakhir adalah 'Pass'
. Di MySQL, boolean diperlakukan sebagai bilangan bulat dalam konteks numerik, dengan true menjadi 1. Jadi, sum(
Lulus/Gagal= 'Pass')
menghitung berapa kali seorang siswa lulus mata kuliah tersebut. = 0
mengatakan bahwa siswa tersebut tidak pernah lulus.
Sebagai saran, jangan masukkan karakter khusus seperti /
dan .
dalam nama kolom. Itu membutuhkan keluar dari kolom dan hanya membuat kode lebih sulit untuk ditulis karena diisi dengan backticks.