Допустим, у вас есть 3 таблицы (или любое количество таблиц)
Table1: Table2: Table3
ID Value1 ID Value2 ID Value3
1 A 1 AAA 1 111
2 B 2 BBB 2 222
3 C 5 EEE 3 333
4 444
5 555
Вы можете использовать такой запрос, чтобы убедиться, что вы получаете все возможные данные из всех таблиц:
SELECT U.ID,
Table1.Value1,
Table2.Value2,
Table3.Value3
FROM (((SELECT ID FROM Table1
UNION
SELECT ID FROM Table2
UNION
SELECT ID FROM Table3) AS U
LEFT JOIN Table1 ON U.ID=Table1.ID)
LEFT JOIN Table2 ON U.ID=Table2.ID)
LEFT JOIN Table3 ON U.ID=Table3.ID;
Результат которого:
ID Value1 Value2 Value3
1 A AAA 111
2 B BBB 222
3 C 333
4 444
5 EEE 555
По сути, это просто последовательность LEFT JOIN
для каждой таблицы, объединенная объединением всех возможных идентификаторов во всех таблицах:
SELECT ID FROM Table1
UNION
SELECT ID FROM Table2
UNION
SELECT ID FROM Table3