У меня есть таблица «ученика» и таблица «посещаемости» Если ученик отсутствует, я просто вводим идентификатор и дату ученика в таблице посещаемости. Теперь я хочу, чтобы получить все студенты и их присутствие на определенную дату Однако, когда я пытаюсь левой Join, это дает мне данные конкретного студента отсутствует на этой конкретной датыleft join not working in php
Таблица «студент» структура и выборка данных:
id|name (varchar field)
1 |xxx
6 |yyy
Таблица 'посещаемость' структура и выборка данных:
id|date (date field)|student_id (integer field)
1 |2015-10-15 | 1
1 |2015-10-16 | 6
Мой запрос
SELECT *
FROM student.id, student.name, attendance.date
LEFT JOIN attendance
ON student.id = attendance.student_id
WHERE attendance.date = '2015-10-15'
Выход
1 xxx 2015-10-15
Однако требуется выход
1 xxx 2015-10-15
6 yyy NULL (or a blank)
Пожалуйста, помогите нам помочь вам, предоставляя http://sqlfiddle.com/ – Ross
Всякий раз, когда вы используете, где положение в запросе он вернет только данные, которые удовлетворяют условию, поэтому вам нужно использовать это условие в 'ON' вместо' WHERE' – Vinie