我有一个表格,其中有60列以上。我想减少列数,并且已经有了一个主意。
所以列看起来像这样:
A_yes A_no B_yes B_no C_yes C_no
1 4 3 5 9 2
我想得到的是这个
Category yes no
A 1 4
B 3 5
C 9 2
当然,这是极其简化的,但是我可以使用用于此目的的模式来扩展此问题的解决方案。 我正在使用PostgreSQL。
谢谢!
答案 0 :(得分:1)
您可以使用横向连接:
select v.*
from t cross join lateral
(values ('A', A_yes, A_no),
('B', B_yes, B_no),
('C', C_yes, C_no)
) v(category, yes, no);