where句は、外部結合を内部結合に変換し直しています。
outer joinによって保持されている一致しない行 すべてNULLになります documentation.statusの値 したがって、documentation.status != 3 条件はこれらを除外します(式NULL !=3の結果 unknownです trueではありません 。
この問題を回避するには、
を使用しますselect 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'
documentation.status != 3に注意してください 述語はJOINに移動されます 状態。