postgresql 多行SQL结果的连接

xpcnnkqh  于 2023-08-04  发布在  PostgreSQL
关注(0)|答案(2)|浏览(130)

我试图从数据库中的两行中获取所有唯一值作为列表。使用PostgreSQL和Python
我使用这个SQL查询:

SELECT DISTINCT from,to FROM database;

字符串
我得到这个输出

from | to 
------+-----
 a    | b
 d    | c
 b    | a


在Python中为:第一个月
但我想要结果:["a", "b", "d", "c"]
我知道我可以使用Python来得到这个结果,但是有没有直接的SQL查询呢?

k7fdbhmy

k7fdbhmy1#

您可以创建一个并集并从中选择唯一元素:

SELECT DISTINCT value
FROM (
    SELECT from AS value FROM database
    UNION ALL
    SELECT to AS value FROM database
);

字符串

vsikbqxv

vsikbqxv2#

我找到了一个解决办法:

SELECT to AS value FROM database UNION SELECT from FROM database;

字符串
在postgresql中,如果没有添加ALL,UNION操作符已经限制为不同的元素。别名用于确保输出表列命名为“value”。

相关问题