Вопрос SQL-запроса: получить данные из таблицы 1, которых нет в таблице 2, в то время как таблица 2 имеет 2 условия - PullRequest
0 голосов
/ 12 октября 2018

У меня есть две таблицы, а именно: tblStudent и tblAttendance.В tblStudent есть столбцы stdnt_name и stdnt_subject.tbl_Attendance имеет имя студента, имя студента, время_инта, дату_ин.

Я хочу получить имена студентов, которые отсутствуют по определенному предмету в определенный день.

Пример:

tblStudents
John.     Prog101
Jen.       Prog101
Jimmy. Prog101
Drew.     Prog101
Nemo.   Prog101
Kobe.     Code101

tblAttendance

John.  Prog101. 10:02am.  10/12
Jen.     Prog101. 10:03am.  10/12
Kobe.  Code101.  10:30am. 10/12

Тогда остальные не присутствуют.

Я хочу, чтобы запрос показывал имена:

Джимми.Нарисовалась.Немо.

Как мне это сделать?Спасибо.

Ответы [ 2 ]

0 голосов
/ 12 октября 2018

Вы также можете использовать вложенные запросы

SELECT TBLSTUDENT.STDNT_NAME
FROM TBLSTUDENT 
WHERE 
TBLSTUDENT.STDNT_NAME 
    NOT IN (SELECT TBLATTENDANCE.STDNT_NAME FROM TBLATTENDANCE)
AND 
TBLSTUDENT.STDNT_SUBJECT 
    NOT IN ( SELECT TBLATTENDANCE.STDNT_SUBJECT FROM TBLATTENDANCE)
0 голосов
/ 12 октября 2018

Попробуйте использовать левое соединение

select tblStudents.name from tblStudents left join tblAttendance
on tblStudents.name=tblAttendance.name and tblStudents.subject=tblAttendance.subject and date='2018-10-12'
where tblAttendance.name is null
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...