Можете да използвате LEFT JOIN и DIGHT JOIN:
SELECT * FROM tableA LEFT JOIN tableB ON tableA.b_id = tableB.id
UNION ALL
SELECT * FROM tableA RIGHT JOIN tableB ON tableA.b_id = tableB.id
WHERE tableA.b_id IS NULL
В Wikipedia също има информация по тази тема:Пълно външно присъединяване .
Статията в Wikipedia предлага използването на UNION в MySQL. Това е малко по-бавно от UNION ALL, но по-важното е, че не винаги дава правилния резултат - ще премахне дублираните редове от изхода. Затова предпочитайте да използвате UNION ALL вместо UNION тук.