0
我有三個表,invoice i
,trans t
和arnotes a
。所有三個表都有一列reference_num
。記錄將存在於i
,t
以及有時爲a
。我想拉i
和t
中的所有記錄,並且如果它在a
中有記錄,則顯示第reason
列中的數據。SQL左連接導致記錄不從第二個表中提取
另外,我只想要DISTINCT結果。我目前有以下內容,但它只返回所有三個中存在的記錄。如果a中沒有記錄,它不會從i
和t
中提取記錄,並且顯示爲reason
的記錄爲空,但記錄完全沒有被取消。有什麼協助嗎?
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%'))
啊哈!那樣做了。謝謝! –