【发布时间】:2015-05-21 13:11:49
【问题描述】:
我正在尝试创建一个 SQL 查询来选择时间戳小于 NOW() 但大于去年 9 月的记录,但我不想通过输入以下内容来指定年份:
date > '01/09/2014'
如果我今天要运行查询,它应该给我来自以下的记录:
2014 年 9 月至 2015 年 5 月(5 月,因为它是创建此问题时的月份)
如果我明年运行它,它应该会给我来自的记录 2015 年 9 月至 2016 年 5 月(5 月,因为它是创建此问题时的月份)
【问题讨论】:
-
如果您知道从哪个月开始需要数据,为什么不直接使用
select * from table where date_col between '2014-09-01' and curdate() -
我会,但这意味着明年它将无法正常工作,因为它仍会从 2014 年 9 月开始获取记录,并且需要从 2015 年 9 月开始。
-
为什么不使用
intval(date('Y')) -1)来确定该字符串?
标签: php mysql sql date timestamp