PHP MYSQL SELECT, даже если некоторые из них пусты - PullRequest
1 голос
/ 07 сентября 2011

Я не слишком знаком с SQL, но мне нужно выбрать одну из 3 таблиц.

Я могу перейти:

ВЫБРАТЬ * ОТ tbl1, tbl2, tbl3 WHERE ID =3

, но есть вероятность, что tbl3 имеет не какие-либо строки с идентификатором 3, и есть вероятность, что tbl1 имеет несколько.

tbl2 долженесть только один ряд.

Я все еще хотел бы получить строки в других таблицах.

Как мне это сделать?

Спасибо, вперед!

Ответы [ 2 ]

1 голос
/ 07 сентября 2011

Как связаны три таблицы?Условие «ГДЕ ИД = 3» немного неоднозначно - существует ли идентификатор во всех трех таблицах, и вам нужны все записи из каждой таблицы, где ИД = 3?

В итоге вам нужно использовать1003 * для объединения таблиц, но трудно привести пример, не зная, как связаны таблицы.

Делая некоторые предположения:

SELECT *
FROM tbl1
LEFT JOIN tbl2 ON tbl2.tbl1_id = tbl1.id
LEFT JOIN tbl3 ON tbl3.tbl1_id = tbl1.id
WHERE tbl1.id = 3;
0 голосов
/ 07 сентября 2011

Отдельные запросы для каждой таблицы, затем подсчет строк этих запросов, затем с результатами
Вы можете сделать, если еще, если заявления делать, что вы хотите сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...