MySQL 的日期内置函数 date_sub() 作用是从指定的日期减去指定时间间隔,它接收两个参数,第一个是指定的日期,常用当前日期,第二个是要减去的时间减少量。
函数语法
DATE_SUB(date, INTERVAL expr unit)
第一个 date 参数指定开始的日期或者日期时间值。
第二个参数 expr unit 细分成两个,一是 expr 代表的减少量的表达式,二是 unit 对应减少量的单位。
unit 单位支持如下的设置:
| 可选单位 | 描述 | 
|---|---|
| YEAR_MONTH | |
| DAY_HOUR | |
| DAY_MINUTE | |
| DAY_SECOND | |
| DAY_MICROSECOND | |
| HOUR_MINUTE | |
| HOUR_SECOND | |
| HOUR_MICROSECOND | |
| MINUTE_SECOND | |
| MINUTE_MICROSECOND | |
| SECOND_MICROSECOND | |
| YEAR | 年份 | 
| QUARTER | 季度 | 
| MONTH | 月份 | 
| WEEK | 周 | 
| DAY | 天 | 
| HOUR | 小时 | 
| MINUTE | 分 | 
| SECOND | 秒 | 
| MICROSECOND | 微妙 | 
示例
假设查询最近 2 个月的数据信息,示例如下:
select * from info where date(create_date) >= date_sub(curdate(), interval 2 month)