一尘不染

什么是PostgreSQL中的LEFT JOIN

sql

我看过使用LEFT JOIN而不是INNER或的查询LEFT OUTER

究竟是LEFT JOIN什么?


阅读 857

收藏
2021-03-10

共1个答案

一尘不染

当ainner join仅返回两个表中都匹配left join的条目时,a将获取第一个表中的所有条目以及第二个表中的所有匹配条目。Aright join是a的倒数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
2021-03-10