経緯
以下を満たす条件で、データを抽出するSQLを考えているのですが、行き詰まっております。
お手数をおかけしますが、ご教示頂ければと思います。
発生している問題
以下の2テーブルにおいて、同一の請求情報.計上確定番号で、
請求明細情報.請求確定処理済フラグが「1:済」の場合は、
伝票番号が抽出されないSQLを実現したいです。
■請求情報
伝票番号 | 計上確定番号 |
---|---|
1001 | 1 |
1002 | 1 |
■請求明細情報
伝票番号 | 伝票明細番号 | 請求確定処理済フラグ |
---|---|---|
1001 | 1 | 0 |
1001 | 2 | 1 |
1002 | 1 | 0 |
1002 | 2 | 0 |
試したこと
請求明細情報.請求確定処理済フラグが「1:済」ではない伝票番号を
抽出するSQLは実現できました。
select 伝票番号 from 請求情報 a where not exists ( select 1 from 請求明細情報 b where a.伝票番号 = b.伝票番号 and b.請求確定処理済フラグ = '1' and a.計上確定番号 = '1' )
その他
ご教授頂く際、もし可能であれば(このように複雑?な)、SQLの組み立て方の考えが知りたいです。
最近、副問合せ系(特に相関)のSQLが苦手な事に悩んでおり、習得したいと考えています。