document_id
をdirection flag = 'O'
で送信し、同じdocument_id
を受信して同じテーブルに記録するが、新しい行と別の列に記録するプロセスを確認しようとしている:src_document_id
、direction = 'I
'。SQL - 同じテーブル内の異なる列に同じ値を一致させる
の一致する値を持たない、送信された(Directionフラグ= O)レコードを識別する必要があります。ここでは、direction_flag = 'I'
です。 Inbound値に対してOutbound値をチェックするときにEXISTSまたはNot Existsを使用するかどうかはわかりません。以下の表の
EX:それはDirection_flag = I.うまくいけば
select
document_id
from
DOCUMENT_TABLE
where
direction_flag = 'O'
and
client_id = '9999'
and
EXISTS
(
select
document_id
from
DOCUMENT_TABLE
where
document_id != src_document_id and direction_flag = 'I'
)
との対応src_document_idを持っていないとして、クエリがDOCUMENT_ID 34567を返す必要があり、私は十分に明確にされています。 SQLに精通していない
DOCUMENT_ TABLE:
Document_id client number Direction flag src_document_id
12345 9999 O
23456 9999 O
34567 9999 O
aaaaa I 12345
aaaab I 23456