在postgresql中添加两个关系的列

时间:2013-07-18 17:07:33

标签: sql postgresql concatenation postgresql-9.1

我有两个关系,比如relation1和relation2。 relation1具有A,B,C列,而relation2具有D,E,F列。

我想在关系2的D中添加一个关系1的A,其中C = F.对于关系2中不存在的C值必须出现,并且必须出现在关系1中不出现的F值如何做这个postgresql?< / p>

1 个答案:

答案 0 :(得分:2)

使用FULL [OUTER] JOIN从左侧包含行,而在另一侧没有匹配的行:

SELECT COALESCE(r1.a, 0) + COALESCE(r2.d, 0) AS a_d
FROM   relation1      r1
FULL   JOIN relation2 r2 ON r1.c = r2.f

还可以使用COALESCE()来捕获替换缺失列的NULL值。