MySQL 如何在MySQL中获取上个月的最后一天?
在很多业务场景下,我们都需要获取上个月的最后一天,例如:制作月报、统计上月数据等。在MySQL中,可以通过一些日期函数来实现。
阅读更多:MySQL 教程
方法一:使用DATE_SUB函数
DATE_SUB函数可以在一个日期时间基础上减去一定的时间间隔,而上个月的最后一天即为当前日期减去一个月后的最后一天。具体使用方式如下所示:
SELECT LAST_DAY(DATE_SUB(CURDATE(), INTERVAL 1 MONTH));
其中,CURDATE()函数用于获取当前日期,而DATE_SUB()函数则将当前日期减去1个月。LAST_DAY()函数用于获取上个月的最后一天。以上SQL语句会返回上个月最后一天的日期,例如:2021-09-30。
方法二:使用DATE_FORMAT函数
DATE_FORMAT函数可以将日期时间格式化成特定的字符串形式,我们可以将上个月的最后一天格式化成’YYYY-MM-DD’的形式。具体使用方式如下所示:
SELECT DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 MONTH), '%Y-%m-%d');
以上SQL语句会返回上个月最后一天的日期,例如:2021-09-30。
方法三:使用LAST_DAY函数
LAST_DAY函数可以获取某个日期时间所在月份的最后一天,我们只需要将当前日期减去1个月后,再使用LAST_DAY函数即可。具体使用方式如下所示:
SELECT LAST_DAY(DATE_SUB(CURDATE(), INTERVAL 1 MONTH));
以上SQL语句会返回上个月最后一天的日期,例如:2021-09-30。
总结
通过以上三种方式,我们可以在MySQL中获取上个月的最后一天。在实际应用中,可以根据具体业务场景选择不同的方法来实现,以提高查询效率和准确性。