MySQL查询固定时间段[今天、昨天、近3天、本月]的数据

  • table_name代表表名
  • create_time代表时间字段

查询当天数据

SELECT * FROM table_name WHERE DATEDIFF(create_time,NOW()) = 0

查询昨天数据

-- 需要查询前天数据的话 只需要把条件中的数值改为-2即可,其他天的话依次类推
SELECT * FROM table_name WHERE DATEDIFF(create_time,NOW()) = -1

查询3天内的数据

SELECT * FROM table_name WHERE DATE_SUB(CURDATE(), INTERVAL 3 DAY) <= date(create_time)

查询本月数据

SELECT * FROM table_name WHERE DATE_FORMAT( create_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )

查询上月数据

SELECT * FROM table_name WHERE PERIOD_DIFF( date_format( now( ) , '%Y%m' ) , date_format( create_time, '%Y%m' ) ) = 1

查询上上月数据

-- 查询更久月的数据只需要修改条件中的最后数字即可,依次类推
SELECT * FROM table_name WHERE PERIOD_DIFF( date_format( now( ) , '%Y%m' ) , date_format( create_time, '%Y%m' ) ) = 2
© 版权声明
THE END
喜欢就支持一下吧
点赞0打赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容