Din where-klausul konverterer den ydre join tilbage til en indre.
De ikke-matchende rækker bevaret af den outer join vil alle have NULL værdier for documentation.status så din documentation.status != 3 betingelse vil filtrere disse tilbage (Resultatet af udtrykket NULL !=3 er unknown ikke true ).
Brug
for at undgå dette problemselect documentation_reference.ref_docnumber,
documentation.filename
from documentation_reference
left outer join documentation
on ref_docnumber = documentation.docnumber
and documentation.status != 3
where documentation_reference.docnumber = 'TP-036'
Bemærk, at documentation.status != 3 prædikat flyttes ind i JOIN tilstand.