sql求各季度总和,已知每月数据

9 篇文章 0 订阅

原始数据

在这里插入图片描述

目标数据

在这里插入图片描述

实现思路

1.由于元数据中没有季度标记,需对数据处理,添加上正确的季度,
2.按shop和季度进行分组 再进行聚合

实现代码

添加季度字段
select
shop,
month,
dz,
fz,
sp,
case 
  when month between '2019-01' and '2019-03' then '1季度'
  when month between '2019-04' and '2019-06' then '2季度'
  when month between '2019-07' and '2019-09' then '3季度'
  when month between '2019-10' and '2019-12' then '4季度'
 else null
 end as `季度`
from
tablename;

在这里插入图片描述

查询各季度总和代码
select
shop,
`季度`,
sum(dz) as dz_sum,
sum(fz) as fz_sum,
sum(sp) as sp_sum
from    
(
select
shop,
month,
dz,
fz,
sp,
case 
  when month between '2019-01' and '2019-03' then '1季度'
  when month between '2019-04' and '2019-06' then '2季度'
  when month between '2019-07' and '2019-09' then '3季度'
  when month between '2019-10' and '2019-12' then '4季度'
 else null
 end as `季度`
from
tablename
)t1
group by shop,`季度`;

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值