如何将2个独立列中的值融合到PostgreSQL中的公共列中?

时间:2013-05-31 19:05:21

标签: postgresql

是否有一种简单的方法可以融合PostgreSQL中两个独立(尽管相似)列的值?

例如,以下声明:

SELECT a, b FROM stuff;

目前会导致:

a         b
-----------
1         2
1         3
1         4

但是,我希望以下列方式融合两列:

ab
---
1
1
1
2
3
4

2 个答案:

答案 0 :(得分:2)

select a as ab from stuff
union all 
select b from stuff
order by 1

答案 1 :(得分:2)

如果您需要从同一个复杂查询中获得2个结果而不会失去性能,请尝试以下方法:

WITH source AS 
(SELECT A,B
 FROM your_complex_query)
SELECT A as AB
FROM source 
UNION ALL
SELECT B as AB
FROM source