“普通的SQL问题”:)我有两个表和第三个作为“半联结表”的表,这意味着有时只有两个外键中的一个。有没有办法加入它们?
例如,给出以下数据:
表D id:1,2,3,4,5
表C id:1,2,3
表格连接(D.id,C.id):( 1,1)(2,NULL)(3,NULL)(4,2)(5,3)
有没有办法检索以下内容?
([行id 1的D字段],[行id 1的C字段])
([行ID 2的D字段],[NULL C字段])
([行ID 3的D字段],[NULL C字段])
([行ID 4的D字段],[行id 2的C字段])
([行ID 5的D字段],[行ID 3的C字段])
如果相关,我正在使用PostgreSQL 谢谢你的时间!
答案 0 :(得分:3)
SELECT d.*, c.*
FROM d
JOIN junction j
ON j.d_id = d.id
LEFT JOIN
с
ON c.id = j.c_id