首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将列转置为行- postgres

将列转置为行- postgres
EN

Stack Overflow用户
提问于 2013-11-07 16:27:14
回答 1查看 393关注 0票数 1

我需要在postgreSQL中将列转置为行。以下是要求。任何帮助都是非常感谢的。

源表/数据:

代码语言:javascript
复制
id   class-1-male class-1-female class-2-male  class-2-female class-3-male  class-3-female<br> 
1      1                1                11              7          0                9<br> 
2      11              31                6              7          40               92<br> 
3      15              31                8              37         30               91<br> 
4      11              13                50             17         10               19<br> 

我需要以下格式的数据:

代码语言:javascript
复制
id   class-type male female<br> 
1     class-1    1     1<br> 
2     class-1    11    31<br> 
3     class-1    15    31<br> 
4     class-1    11    13<br> 
1     class-2    11    7<br> 
2     class-2    6     7<br> 
3     class-2    8     37<br> 
4     class-2    50    17<br> 
1     class-3    0     9<br> 
2     class-3    40    92<br> 
3     class-3    30    91<br> 
4     class-3    10    19<br>

THanks Jitendra

EN

回答 1

Stack Overflow用户

发布于 2013-11-07 17:45:04

一个联盟可能就是你想要的:

代码语言:javascript
复制
select id,
       'class1'::text as "class-type",
       "class-1-male" as male,
       "class-1-female" as female
from data
union all
select id,
       'class2'::text as "class-type",
       "class-2-male" as male,
       "class-2-female" as female
from data
union all
…
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19831037

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档