请问,如何实现数行列转换?急。。。。。。如:表table1有如下记录民族---------------汉族枪族回族彝族现我想把它
请问,如何实现数行列转换?急。。。。。。
如:表table1有如下记录
民族
---------------
汉族
枪族
回族
彝族
现我想把它转换为
汉族 枪族 回族 彝族
请问怎么转换?
[解决办法]
结果表里要的是什么数据,每个民族的人数?
[解决办法]
select
sum(decode(a.民族, '汉族 ',a.人数,0)) as 汉族,
sum(decode(a.民族, '枪族 ',a.人数,0)) as 枪族,
sum(decode(a.民族, '回族 ',a.人数,0)) as 回族,
sum(decode(a.民族, '彝族 ',a.人数,0)) as 彝族
from table a
[解决办法]
good
[解决办法]
select
sum(decode(a.民族, '汉族 ',a.人数,0)) as 汉族,
sum(decode(a.民族, '枪族 ',a.人数,0)) as 枪族,
sum(decode(a.民族, '回族 ',a.人数,0)) as 回族,
sum(decode(a.民族, '彝族 ',a.人数,0)) as 彝族
from table a;
[解决办法]
不定列行列转换
这一类型的转换可能要借助于PL/SQL来完成
没试过,从网上搜搜
