好
我有一个广泛的PostgreSQL表,我需要使用联合查询更改为长格式。表是这样的:
lagoon_liner_remedy将列转换为行的一种简单方法是创建一个包含需要转换的列的数组,然后将其解嵌套以创建行,例如
CREATE TABLE t (id int, a text, b text, c text);
INSERT INTO t VALUES (1,'a1','b1','c1'), (2,'a2','b2','c2');
SELECT id, unnest(array[a,b,c]) FROM t;
id | unnest
----+--------
1 | a1
1 | b1
1 | c1
2 | a2
2 | b2
2 | c2
(6 rows)
Demo:db<>fiddle