mysql中怎么取季度数据_MySQL中获取季度、年度等数据

本文介绍了在MySQL中如何获取当前季度、上季度、本年度和上年度的数据,以及处理特殊日期需求的方法,包括示例查询和实际运行结果展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上一篇讲了如何获取天、周、月等数据,本篇介绍一下如何获取季度、年度数据,以及一些特殊的日期需求

1、本季度

QUARTER(CURDATE())

示例:

select *

from tablename

where

QUARTER(time_ziduan)= QUARTER(CURDATE())

2、上季度

QUARTER(DATE_SUB(CURDATE(),INTERVAL1QUARTER))

示例:

select *

from tablename

where

QUARTER(time_ziduan)= QUARTER(DATE_SUB(CURDATE(),INTERVAL 1 QUARTER))

3、本年度

YEAR(CURDATE())

YEAR(NOW())

示例:

select *

from tablename

where

YEAR(time_ziduan)=YEAR(CURDATE())

4、上年度

YEAR(DATE_SUB(CURDATE(),INTERVAL1YEAR))

YEAR(DATE_SUB(NOW(),INTERVAL1YEAR))

示例:

select *

from tablename

where

YEAR(time_ziduan)=YEAR(DATE_SUB(CURDATE(),INTERVAL1YEAR))

5、特殊日期需求

DATE_ADD(CURDATE(),INTERVAL-DAY(CURDATE())+1DAY)本月第一天

LAST_DAY(CURDATE())本月最后一天

DATE_ADD(DATE_ADD(CURDATE(),INTERVAL-DAY(CURDATE())+1DAY),INTERVAL1MONTH)下月第一天

下面来一段示例:

SELECT

`渠道`

,SUM(case when YEAR(`应还款日期`)= YEAR(DATE_SUB(CURDATE(),INTERVAL 1 YEAR)) THEN `应还本金金额`+`应还利息金额` ELSE 0 END) as '上年度应还金额'

,SUM(case when YEAR(`应还款日期`)= YEAR(CURDATE()) THEN `应还本金金额`+`应还利息金额` ELSE 0 END) as '本年度应还金额'

,SUM(case when QUARTER(`应还款日期`)= QUARTER(DATE_SUB(CURDATE(),INTERVAL 1 QUARTER)) THEN `应还本金金额`+`应还利息金额` ELSE 0 END) as '上季度应还金额'

,SUM(case when QUARTER(`应还款日期`)= QUARTER(CURDATE()) THEN `应还本金金额`+`应还利息金额` ELSE 0 END) as '本季度应还金额'

FROM

dq_daichang_qingdan

GROUP BY

`渠道`

运行结果如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值