您的位置:首页 > 数据库 > MySQL

mysql 获取上个月,这个月的第一天或最后一天

2016-07-22 14:08 543 查看
时间相关:

last_day(curdate());获取当月最后一天。
这就出来当月天数了,相当简单。

MySQL 获取当前月的天数
selectcurdate();                      --获取当前日期

select DATE_ADD(curdate(),interval -day(curdate())+1day)   --获取本月第一天

select date_add(curdate()-day(curdate())+1,interval 1 month ) --获取下个月的第一天

select DATEDIFF(date_add(curdate()-day(curdate())+1,interval 1month ),DATE_ADD(curdate(),interval -day(curdate())+1 day)) fromdual --获取当前月的天数

上个月的第一天: 

select date_sub(date_sub(date_format(now(),'%y-%m-%d'),interval extract(  

   day from now())-1 day),interval 1 month)

 

 

上个月的最后一天:

select date_sub(date_sub(date_format(now(),'%y-%m-%d'),interval extract(  

   day from now()) day),interval 0 month) as date

 

 

这个月的第一天:

 select date_sub(date_sub(date_format(now(),'%y-%m-%d'),interval extract(  

   day from now())-1 day),interval 0 month)

 

 

这个月的最后一天:

select date_sub(date_sub(date_format(now(),'%y-%m-%d'),interval extract(  

   day from now()) day),interval -1 month) as date     (有bug)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: