0
将PostgreSQL 9.5.1版中的两个表连接起来使用UNION
;并用布尔值检查列name
中的值是否出现在这些表中的一个或两个中。使用union将两个表连接起来
这是我最小的示例代码:
WITH things_a(name) AS (
VALUES ('AAA'),('BBB'),('CCC')),
things_b(name) AS (
VALUES ('BBB'),('CCC'),('DDD'))
SELECT *
FROM
(SELECT name AS name,
TRUE AS in_a,
NULL::boolean AS in_b
FROM things_a
UNION SELECT name AS name,
NULL AS in_a,
TRUE AS in_b
FROM things_b) AS things
ORDER BY name
对于我想有以下结果:
name | in_a | in_b
------------------------
AAA | t | f
BBB | t | t
CCC | t | t
DDD | f | t
但也有可能是当然的替代方法
你尝试过什么,到目前为止,你得到什么样的结果是从目标不同? – jmelesky