MYSQL中取当前年份的第一天和当前周,月,季度,年度的第一天/最后一天

这篇文章展示了如何使用MySQL的日期和时间函数来获取当前月份、季度和年的第一天和最后一天,以及上个月和上个季度的这些日期。示例包括LAST_DAY(),MAKEDATE(),EXTRACT(),INTERVAL,和QUARTER()等函数的用法。

– 当月最后一天
SELECT LAST_DAY(now());
– 当月第一天
SELECT concat(date_format(LAST_DAY(now()),‘%Y-%m-’),‘01’);

– 当前季度的第一天:
select concat(date_format(LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + interval QUARTER(CURDATE())*3-3 month),‘%Y-%m-’),‘01’);
– 当前季度的最后一天:
select LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + interval QUARTER(CURDATE())*3-1 month);

– 今年第一天
SELECT DATE_SUB(CURDATE(),INTERVAL dayofyear(now())-1 DAY);
– 今年最后一天
SELECT concat(YEAR(now()),‘-12-31’);

– 上月的第一天:
SELECT concat(date_format(LAST_DAY(now() - interval 1 month),‘%Y-%m-’),‘01’);
– 上月的最后一天:
SELECT LAST_DAY(now() - interval 1 month);

– 上季度的第一天
select concat(date_format(LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + interval QUARTER(CURDATE())*3-6 month),‘%Y-%m-’),‘01’);
– 上季度的最后一天
select LAST_DAY(MAKEDATE(EXTRACT(YEAR FROM CURDATE()),1) + interval QUARTER(CURDATE())*3-4 month);

– 去年第一天
SELECT DATE_SUB(CURDATE() - interval 1 YEAR,INTERVAL dayofyear(now())-1 DAY);
– 去年最后一天
SELECT concat(YEAR(now()- interval 1 YEAR),‘-12-31’);

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值