Oracle列转行,行转列

发布网友 发布时间:2022-04-22 20:42

我来回答

3个回答

热心网友 时间:2022-04-08 02:24

oracle下可以用函数decode处理:

select 产品名称,
sum(decode(季度,'第一季度',销售额,0)) 第一季度销售额,
sum(decode(季度,'第二季度',销售额,0)) 第二季度销售额,
sum(decode(季度,'第三季度',销售额,0)) 第三季度销售额,
sum(decode(季度,'第四季度',销售额,0)) 第四季度销售额,
from 表名
group by 产品名称;

热心网友 时间:2022-04-08 03:42

select 产品名称,sum(case when 季度='第一季度' then 销售额 else 0 end) as 第一季度销售额,
sum(case when 季度='第二季度' then 销售额 else 0 end) as 第二季度销售额,
sum(case when 季度='第三季度' then 销售额 else 0 end) as 第三季度销售额,
sum(case when 季度='第四季度' then 销售额 else 0 end) 第四季度销售额
from 表名 group by 产品名称;

热心网友 时间:2022-04-08 05:17

select 产品名称,
max(case when 季度=‘第一季度’then 销售额 else 0 end)as 第一季度销售额,
max(case when 季度=‘第二季度’then 销售额 else 0 end)as 第二季度销售额,
max(case when 季度=‘第三季度’then 销售额 else 0 end)as 第三季度销售额,
max(case when 季度=‘第四季度’then 销售额 else 0 end)as 第四季度销售额,
sum(销售额)as 总销售额 /////可可选可不选
from 表
group by 产品名称
having sum(销售额)>数值 /////可选可不选

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com