У меня есть три таблицы в моей базе данных. первый - студенты, у которых первичный ключ - student_id. второй - таблица курсов, в которой первичный ключ имеет course_id, и, наконец, у меня есть таблица оценок, в которой внешними ключами являются id_student и id_course, а также поле оценки. Я хочу получить подробную информацию о студентах, которые пропускают свои оценки в таблице оценок. Я искал переполнение стека, но не смог найти точный ответ, который я ищу. и что я пробовал до сих пор, это следующий запрос:
select st.student_id,
st.lname,
st.fname,
cs.course_id,
g.grade
from students st
join grades g
on g.id_student = st.student_id
join courses cs
on cs.course_id = g.id_course
where g.grade is null
Если я попробую этот же запрос без условия, я получу 39 строк, но я должен получить 40, потому что в моей базе данных есть один студент, который отсутствуетоценки в course_id 20. ** пропущенная вещь - student_id, где course_id - 20, а оценка для него не существует. **