mysql获取今天,昨天,前7天,前30天的数据
在项目中我们经常遇到需要对数据统计,就比如几天前的,一个月前,半年前等等。。。
在mysql中为我们提供了日期处理的函数可以大大提高我们自己写sql统计的效率。以下我会列举4个统计日期的sql
- 查询今天的数据
TO_DAYS(日期字段) = TO_DAYS(NOW())
- 查询昨天的数据
TO_DAYS( NOW( ) ) - TO_DAYS(日期字段) <= 1
- 查询前7天的数据
DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(日期字段)
- 查询前30天的数据
DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(日期字段))
从上面的sql可以发现,查询7天和30天的sql是一样的,只需要更改天数大小;使用他们非常简单,只需要将sql放到查询语句的条件里就行,你也可以自己规定查询的天数范围。