[英]What is a LEFT JOIN in PostgreSQL
我見過使用LEFT JOIN
而不是INNER
或LEFT OUTER
。
什么是LEFT JOIN
?
如果inner join
聯接僅返回兩個表中匹配的條目,則left join
將獲取第一個表中的所有條目以及第二個表中匹配的任何條目。 right join
是left join
的反向(即:所有來自第二個表)
所以如果TableA是
A B
1 a
2 b
3 c
和TableB是
A B
1 d
2 e
然后Select * from TableA inner join TableB on TableA.A = TableB.A
返回
1 a 1 d
2 b 2 e
並且Select * from TableA left join TableB on TableA.A = TableB.A
返回
1 a 1 d
2 b 2 e
3 c null null
它與LEFT OUTER相同(因為INNER JOIN需要雙邊匹配所以暗示OUTER,因此LEFT INNER JOIN
沒有意義)。 這同樣適用於RIGHT JOIN
和FULL JOIN
它們分別相當於RIGHT OUTER JOIN
和FULL OUTER JOIN
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.