Как присоединиться к пустой таблице
Я хочу получить все строки из моих трех таблиц, и один из них пуст.
Таблица 1:
Names Numbers Hello 123 Bye 123
Таблица 2:
Names Numbers Xyz. 246
Таблица 3:
Names Numbers
Таблица 3 не содержит значений
Я хочу, чтобы результат содержал все строки:
Names Numbers Xyz. 246 Hello 123 Bye 123
Я думаю, что вы ищете Union all
select * from table1 union all select * from table2 union all select * from table3
Объединение использования для объединения столбцов, а объединение используется для объединения строк
Чтобы получить все эти значения, вам нужно … получить все записи 🙂
SELECT Name, Numbers FROM Table1 UNION SELECT Name, Numbers FROM Table2 UNION SELECT Name, Numbers FROM Table3
- Используйте
UNION
чтобы получить свой список имен - Используйте
LEFT JOIN
для извлечения данных
Пример:
SELECT list.names, t1.assigned, t2.unsassigned, t3.closed, t4.open FROM (select names from table1 union select names from table2 union select names from table3 union select names from table4 ) list LEFT JOIN table1 t1 ON (list.names = t1.names) LEFT JOIN table2 t2 ON (list.names = t2.names) LEFT JOIN table3 t3 ON (list.names = t3.names) LEFT JOIN table4 t4 ON (list.names = t4.names)