-- ----------------------------------时间:
-- 当前时间的整分
select TIMESTAMP(date_format(now(),'%Y-%m-%d %H:%i:00'))
-- 当前时间的整小时
select TIMESTAMP(date_format(now(),'%Y-%m-%d %H:00:00'))
-- 昨天的这个时间
select SUBDATE(now(),INTERVAL 1 day)
-- --------------------------------天:
-- 当天的0点0分0秒
select TIMESTAMP(CURDATE())
-- 当天的23点59分59秒
select TIMESTAMP(CURDATE(),'23:59:59')
-- 昨天的0点0分0秒
select TIMESTAMP(SUBDATE(CURDATE(),INTERVAL 1 day))
-- 昨天的23点59分59秒
select TIMESTAMP(SUBDATE(CURDATE(),INTERVAL 1 day),'23:59:59')
-- 明天的0点0分0秒
select TIMESTAMP(ADDDATE(CURDATE(),INTERVAL 1 day))
-- 明天的23点59分59秒
select TIMESTAMP(ADDDATE(CURDATE(),INTERVAL 1 day),'23:59:59')
-- ---------------------------------周:
-- 当周第一天的0点0分0秒
select TIMESTAMP(SUBDATE(CURDATE(),WEEKDAY(curdate())))
-- 当周第一天的23点59分59秒
select TIMESTAMP(SUBDATE(CURDATE(),WEEKDAY(curdate())),'23:59:59')
-- 当周最后一天的0点0分0秒
select TIMESTAMP(ADDDATE(curdate(),6-WEEKDAY(curdate())))
-- 当周最后一天的23点59分59秒
select TIMESTAMP(ADDDATE(curdate(),6-WEEKDAY(curdate())),'23:59:59')
-- 上周同天的0点0分0秒
select TIMESTAMP(SUBDATE(CURDATE(), INTERVAL 1 week))
-- 上周同天的23点59分59秒
select TIMESTAMP(SUBDATE(CURDATE(), INTERVAL 1 week),'23:59:59')
-- 上周第一天的0点0分0秒
select TIMESTAMP(SUBDATE(SUBDATE(CURDATE(),WEEKDAY(curdate())),INTERVAL 1 week))
-- 上周第一天的23点59分59秒
select TIMESTAMP(SUBDATE(SUBDATE(CURDATE(),WEEKDAY(curdate())),INTERVAL 1 week),'23:59:59')
-- 上周最后一天的0点0分0秒
select TIMESTAMP(SUBDATE(ADDDATE(curdate(),6-WEEKDAY(curdate())), INTERVAL 1 week))
-- 上周最后一天的23点59分59秒
select TIMESTAMP(SUBDATE(ADDDATE(curdate(),6-WEEKDAY(curdate())), INTERVAL 1 week),'23:59:59')
-- 下周同天的0点0分0秒
select TIMESTAMP(ADDDATE(CURDATE(), INTERVAL 1 week))
-- 下周同天的23点59分59秒
select TIMESTAMP(ADDDATE(CURDATE(), INTERVAL 1 week),'23:59:59')
-- 下周第一天天的0点0分0秒
select TIMESTAMP(ADDDATE(SUBDATE(CURDATE(),WEEKDAY(curdate())),INTERVAL 1 week))
-- 下周第一天天的23点59分59秒
select TIMESTAMP(ADDDATE(SUBDATE(CURDATE(),WEEKDAY(curdate())),INTERVAL 1 week),'23:59:59')
-- 下周最后一天的0点0分0秒
select TIMESTAMP(ADDDATE(ADDDATE(curdate(),6-WEEKDAY(curdate())), INTERVAL 1 week))
-- 下周最后一天的23点59分59秒
select TIMESTAMP(ADDDATE(ADDDATE(curdate(),6-WEEKDAY(curdate())), INTERVAL 1 week),'23:59:59')
-- -------------------------------月:
-- 当月第一天的0点0分0秒
select TIMESTAMP(CURDATE()-day(curdate())+1)
-- 当月第一天的23点59分59秒
select TIMESTAMP(CURDATE()-day(curdate())+1,'23:59:59')
-- 当月最后一天的0点0分0秒
select TIMESTAMP(LAST_DAY(CURDATE()))
-- 当月最后一天的23点59分59秒
select TIMESTAMP(LAST_DAY(CURDATE()),'23:59:59')
-- 上月第一天的0点0分0秒
select TIMESTAMP(SUBDATE(CURDATE()-day(curdate())+1,INTERVAL 1 MONTH))
-- 上月第一天的23点59分59秒
select TIMESTAMP(SUBDATE(CURDATE()-day(curdate())+1,INTERVAL 1 MONTH),'23:59:59')
-- 上月最后一天的0点0分0秒
select TIMESTAMP(SUBDATE(LAST_DAY(CURDATE()),INTERVAL 1 MONTH))
-- 上月最后一天的23点59分59秒
select TIMESTAMP(SUBDATE(LAST_DAY(CURDATE()),INTERVAL 1 MONTH),'23:59:59')
-- 下月第一天的0点0分0秒
select TIMESTAMP(SUBDATE(CURDATE()-day(curdate())+1,INTERVAL -1 MONTH))
-- 下月第一天的23点59分59秒
select TIMESTAMP(SUBDATE(CURDATE()-day(curdate())+1,INTERVAL -1 MONTH),'23:59:59')
-- 下月最后一天的0点0分0秒
select TIMESTAMP(SUBDATE(LAST_DAY(CURDATE()),INTERVAL -1 MONTH))
-- 下月最后一天的23点59分59秒
select TIMESTAMP(SUBDATE(LAST_DAY(CURDATE()),INTERVAL -1 MONTH),'23:59:59')
-- ---------------------------------年:
-- 当年第一天的0点0分0秒
select TIMESTAMP(MAKEDATE(year(CURDATE()),1))
-- 当年第一天的23点59分59秒
select TIMESTAMP(MAKEDATE(year(CURDATE()),1),'23:59:59')
-- 当年最后一天的0点0分0秒
select TIMESTAMP(concat(year(CURDATE()),'1231'))
-- 当年最后一天的23点59分59秒
select TIMESTAMP(concat(year(CURDATE()),'1231'),'23:59:59')
-- 上年第一天的0点0分0秒
select TIMESTAMP(MAKEDATE(year(CURDATE())-1,1))
-- 当年第一天的23点59分59秒
select TIMESTAMP(MAKEDATE(year(CURDATE())-1,1),'23:59:59')
-- 上年最后一天的0点0分0秒
select TIMESTAMP(concat(year(CURDATE())-1,'1231'))
-- 当年最后一天的23点59分59秒
select TIMESTAMP(concat(year(CURDATE())-1,'1231'),'23:59:59')
-- 下年第一天的0点0分0秒
select TIMESTAMP(MAKEDATE(year(CURDATE())+1,1))
-- 下年第一天的23点59分59秒
select TIMESTAMP(MAKEDATE(year(CURDATE())+1,1),'23:59:59')
-- 下年最后一天的0点0分0秒
select TIMESTAMP(concat(year(CURDATE())+1,'1231'))
-- 下年最后一天的23点59分59秒
select TIMESTAMP(concat(year(CURDATE())+1,'1231'),'23:59:59')
上述写法都有很多种,基于MySQL自带的日期函数,就可以随意组合