0
私は3つのテーブルinvoice i
,trans t
およびarnotes a
を持っています。 3つのテーブルにはいずれもreference_num
の列があります。レコードはi
,t
、時にはa
に存在します。 i
とt
にすべてのレコードを取り込み、a
にレコードがある場合は、reason
のデータを表示します。sqlはレコードが2番目のテーブルから引き出されないようにするために結合を残しました
さらに、私はDISTINCT結果のみを必要とします。私は現在次のようなことがありますが、それは3つすべてに存在するレコードを返すだけです。 aにレコードがない場合、レコードはi
とt
から引っ張られておらず、reason
にはnullが表示されているため、レコードはまったく引き出されていません。助けてください?
SELECT DISTINCT i.BT_ID,
i.ST_ID,
i.REFERENCE_NUM,
i.INVOICE_DATE,
i.BALANCE,
t.GL_ACCOUNT,
a.REASON
FROM Invoice i
INNER JOIN Trans t ON i.REFERENCE_NUM = t.INVOICE_REFERENCE_NUM
LEFT OUTER JOIN ARNOTES a ON t.INVOICE_REFERENCE_NUM = a.INVOICE_NUM
WHERE (i.BALANCE > 0)
AND (t.GL_ACCOUNT <> '')
AND (t.TRANSACTION_TYPE = 'dist')
AND (NOT (a.REASON LIKE '%COLLECTIONS%'))
あああ!それがそれでした。ありがとうございました! –