mysql 统计指定月份每天的数据

之前为这个问题困扰了半天,搁网上找了半天解决方案,基本上都是单独建一张日期表进行联查。但我感觉很low,但是我又很菜,于是就疯狂找文章看。

于是无意间翻到过一篇文章,具体链接忘记了(PS:侵删),一段sql满足了我的需求,这里记录一下。(PS:我也看不懂啥意思)

select @d:=@d+1 number,
DATE_SUB(DATE_FORMAT('2020-9-02','%Y-%m-%d'),INTERVAL DAYOFMONTH(DATE_FORMAT('2020-9-02','%Y-%m-%d'))-@d DAY) time
from
(select 1 UNION ALL select 2 UNION ALL select 3 UNION ALL select 4) a,
(select 1 UNION ALL select 2 UNION ALL select 3 UNION ALL select 4) b,
(select 1 UNION ALL select 2) c,
(select @d:=0) d
where @d < day(LAST_DAY(DATE_FORMAT('2020-9-02','%Y-%m-%d')))

大致上就利用了这段脚本,去跟业务表进行联查,完成了任务。

具体sql如下:

SELECT
      IFNULL(sum(c.final_price),0) as actingMember,
      concat(a.number,'号') as day
      FROM
      (
      select @d:=@d+1 number,
      DATE_SUB(DATE_FORMAT(#{monthDate,jdbcType=VARCHAR},'%Y-%m-%d'),INTERVAL DAYOFMONTH(DATE_FORMAT(#{monthDate,jdbcType=VARCHAR},'%Y-%m-%d'))-@d DAY) time
      from
      (se
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值