2つのテーブルがTABLE_A
ありTABLE_B
、結合された列を従業員番号として持っていますEMPNO
。
通常の左アウター結合をしたい。ただし、TABLE_B
ソフト削除された特定のレコード(status='D'
)があるので、これらを含めたいと思います。明確にするために、TABLE_B
アクティブなレコード(status = null / a / anything)と削除されたレコードがある可能性があります。この場合、結果にその従業員を含めたくありません。ただし、削除された従業員のレコードのみTABLE_B
が含まれている場合は、その従業員を結果に含めたいと思います。要件を明確にしたいと思います。(私は長いqrsltのようなことをして、欲しいものを手に入れることができましたが、結合構文を使用してこれを行うためのより最適化された方法が必要だと思います)。(参加しなくても)提案をいただければ幸いです。彼の新しさは、望ましい結果なしに次のクエリを試行しています。
SELECT TABLE_A.EMPNO
FROM TABLE_A
LEFT OUTER JOIN TABLE_B ON TABLE_A.EMPNO = TABLE_B.EMPNO AND TABLE_B.STATUS<>'D'
どんな助けにも感謝します。