我有两张这样的桌子。
表1
Column | Type |
---------+------------------+
cod | text |
value99 | double precision |
表2
Column | Type |
---------+------------------+
cod | text |
value06 | double precision |
我想加入他们,所以我想
Column | Type |
---------+------------------+
cod | text |
value99 | double precision |
value06 | double precision |
问题是并非所有的代码都存在于这两个表中,所以如果其中一个表中不存在代码,则其值应为空。最后我想要这样的东西
cod | value99 | value06 |
---------+------------------+------------------+
1 | 10 | 20 |
2 | 13 | NULL |
3 | NULL | 15 |
我认为不可能使用左连接或右连接。或者可能是…有什么想法吗?THX=)
编辑:
我尝试了完全外部联接,但结果是
code value code value
1 10 1 4
2 15 NULL NULL
NULL NULL 3 36
回答!!!!:
我找到了@tobiasoptenbrouw的答案:
SELECT test1.code,test1.value,test2.value FROM public.test1 LEFT OUTER JOIN public.test2 ON test1.code=test2.code
UNION
SELECT test2.code,test1.value,test2.value FROM public.test1 RIGHT OUTER JOIN public.test2 ON test1.code=test2.code