Mysql 获取当前日期前一天(DATE_SUB()函数的用法)

在业务场景当中很多时候会获取当前的日期,时间,有时候会获取数据库中某个时间段的数据,所以CURDATE()  CURTIME() NOW()用得比较多。now()在Excel当中也有这个函数。以上方法的用法:

 

获取当前日期:select curdate() 

获取当前日期前一天:select  date_sub(curdate(),interval 1 day)

获取当前日期后一天:select date_sub(curdate(),interval -1 day)

 

在判断当中的使用:

在判断当中也是一样的使用哈,例想要从表中查A,条件是time大于等于昨天,time小于等于今天:

select A from 表 where time >=date_sub(curdate(),interval 1 day) AND time <= curdate

 

随便举几个date_sub()的例子。

date_sub('2016-08-01',interval 1 day) 表示 2016-07-31
date_sub('2016-08-01',interval 0 day) 表示 2016-08-01
date_sub('2016-08-01',interval -1 day) 表示 2016-08-02

date_sub(curdate(),interval 1 day) 表示 2016-07-31
date_sub(curdate(),interval -1 day) 2016-08-02
date_sub(curdate(),interval 1 month) 表示 2016-07-01
date_sub(curdate(),interval -1 month) 表示 2016-09-01
date_sub(curdate(),interval 1 year) 表示 2015-08-01
date_sub(curdate(),interval -1 year) 表示 2017-08-01

备注:

SELECT NOW(),CURDATE(),CURTIME()

结果类似:

  NOW() CURDATE() CURTIME()
  2016-08-01 16:25:46 2016-08-01 16:25:46

你可能感兴趣的:(mysql)