我想获得一个月的记录,比如第8个月,即8月,那么如何将8与时间戳字段进行比较
SELECT * FROM `reserve_Product` WHERE MONTH(`date`) = 8
答案 0 :(得分:0)
您必须使用DATE_FORMAT
SELECT * FROM reserve_Product WHERE DATE_FORMAT(`date`, '%m') = 8
试试这个小提琴:http://sqlfiddle.com/#!9/ef36c/3
答案 1 :(得分:0)
即使你的查询是正确的,但由于月份功能它不会使用索引,如果表格很笨,它会很慢...所以如果你想要性能而且只需要数据,那么你可以使用下面的查询 -
SELECT * FROM
reserve_Product
WHERE `date` >= '2015-08-01 00:00:00' and `date` <= '2015-08-31 23:59:59';
但如果您想要所有年份的八月数据,那么您必须使用日期函数。