postgres join 仅当右表中没有找到匹配项时才从左表获取数据,并且也获取匹配数据

问题描述 投票:0回答:1

嗨,我在 postgres 工作。我有下表contract_para

contract_para

Id

1
2
3
4
5


contract_lines

Id   |  para_id
1    |  1
2    |  2
3    |  3


Output

contract_para_id    | contract_lines_id     |   contract_lines_para_id
1                   | 1                     |   1
2                   | 2                     |   2
3                   | 3                     |   3
4                   | null                  |   null
5                   | null                  |   null

我想连接两个表并返回匹配的数据,并且返回的数据出现在第一个表中而不是第二个表中。有人可以帮我查询一下吗?谢谢

sql postgresql join left-join
1个回答
0
投票

这将从

contract_para
检索获取行,即使
contract_lines
中没有匹配的行:

select *
from contract_para cp
left join contract_lines cl on cp.id = cl.para_id
© www.soinside.com 2019 - 2024. All rights reserved.