mysql 关于日期查找整理(今天,昨天,本周,本月)

mysql 关于日期查找整理(今天,昨天,本周,本月)

最常见(今天,昨天,本周,本月)

  1. 今天:SELECT * FROM (表) WHERE TO_DAYS(字段) = TO_DAYS(NOW())
  2. 昨天:
    第一种:SELECT * FROM (表) WHERE DATEDIFF(,NOW())=-1
    第二种:SELECT * FROM (表) WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 字段) <= 1
  3. 本周:SELECT * FROM (表) WHERE YEARWEEK(date_format(字段,'%Y-%m-%d')) = YEARWEEK(now()); 其中%Y-%m-%d表示格式化日期成 '2020-01-01’这样子
  4. 上周:SELECT * FROM (表) WHERE YEARWEEK(date_format(字段,'%Y-%m-%d')) = YEARWEEK(now()) - 1;上n周是 - n ,下一周是 + 1,下n周是 + n;
  5. 本月:SELECT * FROM (表) WHERE DATE_FORMAT( 字段, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
  6. 上月:SELECT * FROM (表) WHERE period_diff(date_format(now(), '%y%m'), date_format(字段, '%y%m')) = 1;上n月是 = n,下月是 = - 1,下n月是 - n;
  7. 本季度:SELECT * FROM (表) WHERE quarter(字段)=quarter(now())
  8. 上季度:SELECT * FROM (表) WHERE QUARTER(字段)=QUARTER(DATE_ADD(NOW(),INTERVAL -1 QUARTER)) 其中 -1改为1的话就是下季度,以此类推
  9. 今年:SELECT * FROM (表) WHERE YEAR(字段) = YEAR(NOW())
  10. 去年:SELECT * FROM (表) WHERE YEAR(字段) = YEAR(DATE_ADD(NOW(),INTERVAL -1 YEAR))其中 -1改为1的话就是明年,以此类推

常见的关于日期的函数

  1. DATE_ADD() :函数向日期添加指定的时间间隔(日期增加!)
    例:SELECT id,DATE_ADD(create_time(你的字段),INTERVAL 15 DAY) AS date FROM order 函数的作用:把查询出来的create_time加上15天

  2. DATE_SUB() :函数从日期减去指定的时间间隔(日期减少!)
    例:SELECT id,DATE_SUB(create_time(你的字段),INTERVAL 15 DAY) AS date FROM order 函数的作用:把查询出来的create_time减少15天

  3. DATEDIFF(): 函数返回两个日期之间的天数(前面的日期减后面的日期)
    例:SELECT shop_name,open_time,end_time, DATEDIFF(end_time,open_time) AS totalDay FROM shop 函数的作用:算出商店的开店时长
    例子图片

  4. DATE_FORMAT() :函数用于以不同的格式显示日期/时间数据(日期格式化)
    例1:SELECT shop_name,DATE_FORMAT(open_time,'%Y-%m-%d') open_time,end_time FROM shop
    例子图片
    例子2:SELECT shop_name,DATE_FORMAT(open_time,'%Y-%M-%d-%u-%W') open_time,end_time FROM shop
    在这里插入图片描述
    注:M月的英文,u周(00-53)星期一是一周的第一天,W星期名

  5. NOW() 返回当前的日期和时间。

  6. CURDATE() 返回当前的日期。

  7. CURTIME() 返回当前的时间。

    5,6,7的区别如下图:
    在这里插入图片描述

  8. EXTRACT(): 函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等
    例:SELECT shop_name, EXTRACT( YEAR FROM open_time ) AS YEAR , EXTRACT( MONTH FROM open_time ) AS MONTH , EXTRACT( DAY FROM open_time ) AS DAY FROM shop
    在这里插入图片描述
    你好! 希望对你有用,谢谢!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值