0
我認爲INNER JOIN等同於WHERE子句中的JOIN。當我使用WHERE子句進行連接時,會返回行。但是如果我進行INNER JOIN,那麼沒有行輸出。我得到的結果是沒有匹配。 我錯了,還是我做錯了什麼?PostgreSQL INNER JOIN與WHERE子句連接
這些是加入相當於?:
腸子JOIN:
account_move_reconcile_line_applied amrla
INNER JOIN account_move_reconcile_line amrl ON (amrla.credit_line_id = amrl.id)
INNER JOIN account_move_reconcile amr ON (amrl.credit_reconcile_id = amr.id)
INNER JOIN account_move_line aml ON (aml.reconcile_partial_id = amr.id)
INNER JOIN res_partner rp ON (aml.partner_id = rp.id)
在WHERE子句:
amrla.credit_line_id = amrl.id
and amrl.partner_id = rp.id
and amrl.credit_reconcile_id = amr.id
and aml.reconcile_id = amr.id
檢查查詢計劃,他們可能會是相同的。 – wildplasser 2013-04-24 09:01:24
對不起,我沒有看到在INNER JOIN中我使用了不同的ID .. – Andrius 2013-04-24 09:01:46
'和aml.reconcile_id = amr.id'與'aml.reconcile_partial_id = amr.id'不一樣, 'aml.partner_id = rp.id'和'amrl.partner_id = rp.id'也不是。他們應該匹配嗎? – 2013-04-24 09:02:41