En una sólo consulta no se si vas a poder; Se me ocurre que puedes hacer una UNION. El la primera utilizas INNER JOIN (te devolverá los que no son nulos en ninguna de las dos) y en la segunda utilizas un WHERE para los que son nulos en una tabla y en la otra (sin JOIN, para que haga el producto cartesiano). No lo he probado, pero creo que debe funcionar.
Código SQL
[-]
SELECT T1.*, T2.* FROM ... T1 INNER JOIN T2 ON...
UNION
SELECT T1.*, T2.* FROM ... T1,T2 WHERE (not T1.campo IS NULL) or (not T2.campo IS NULL)
...algo así.