SQL JOIN Вопросы и ответы с пустыми пропущенными ответами - PullRequest
0 голосов
/ 18 февраля 2019

У меня есть таблица questions с вопросами и таблица answers с ответами на вопросы.Примечание: не может быть ответа на каждый вопрос.У меня также есть столбец в answers, который содержит person_id (лицо, ответившее на вопрос).

Мне нужно выполнить запрос JOIN, чтобы получить все вопросы, и ответ на вопрос, если применимо, для конкретного человека.

select question.text, answers.answer, answer.id from question
left outer join answers
on question.id = answers.question_id
where answers.person_id = 175

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

1 Ответ

0 голосов
/ 18 февраля 2019

У вас есть left join, но условие where должно быть в условии on:

select q.text, a.answer, a.id
from question q left outer join
     answers a
     on q.id = a.question_id and a.person_id = 175;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...