У меня есть четыре таблицы следующим образом
Review (REV_ID pk , REV_NAME)
Meeting (MEETING_ID pk,MEETING_NAME,REV_ID fk to Review)
Task (TASK_ID pk,TASK_NAME,REV_ID fk to Review)
Answer (ANS_ID pk,ANS_NAME,REV_ID fk to Review)
Теперь я хочу выбрать конкретный отзыв и создать таблицу с
Связанные собрания
Связанные ответы
Связанные задачи
Как мне поступить с этим?
Я пытался написать запрос на соединение, но мне удалось получить данные, только если Rev_ID присутствует во всех таблицах?
select * from
(SELECT *
FROM meeting
WHERE EXISTS (SELECT *
FROM review WHERE meeting.rev_id
=review.rev_id)
and meeting.rev_id=142),
(SELECT *
FROM answer
WHERE EXISTS (SELECT *
FROM review WHERE answer.rev_id
=rev.rev_id)
and answer.ans_rev_id=142),
(SELECT *
FROM task
WHERE EXISTS (SELECT *
FROM review WHERE task.rev_id
=review.rev_id)
and task.rev_id=142) r;
Примечание: здесь я попробовал статический Rev_ID = 142 для проверки данных.
Из вышеприведенного запроса я получаю выходные данные, только если данные существуют во всех четырех таблицах, но если данные не существуют ни в одной таблице, они не возвращают оставшееся значение.
Мне нужны как минимум имена всех таблиц в окончательном выводе.