mysql年初至今聚合

年初至今聚合和滑动聚合类似,不同的地方仅在于统计的仅为当前一年的聚合。唯一的区别体现在下限的开始位置上。在年初至今的问题中,下限为该年的第一天,而滑动聚合的下限为N个月的第一天。因此,年初至今的问题的解决方案如下图所示,得到的结果

SELECT
  a.empid,
  DATE_FORMAT(a.ordermonth, '%Y-%m') AS ordermonth,
  a.qty AS thismonth,
  SUM(b.qty) AS total,
  CAST(AVG(b.qty) AS DECIMAL(5,2)) AS avg
FROM emporders a 
INNER JOIN emporders b
    ON a.empid=b.empid
    AND b.ordermonth >= DATE_FORMAT(a.ordermonth, '%Y-01-01')
    AND b.ordermonth <= a.ordermonth
    AND DATE_FORMAT(b.ordermonth,'%Y')='2015' 
GROUP BY a.empid,a.ordermonth,a.qty
ORDER BY a.empid,a.ordermonth
运行结果如下

转载于:https://www.cnblogs.com/chenqionghe/p/4679758.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值