Php 如何在mysql查询中将月份与时间戳字段进行比较?

Php 如何在mysql查询中将月份与时间戳字段进行比较?,php,mysql,sql,database,Php,Mysql,Sql,Database,我想得到一个月的记录,比如第8个月,也就是8月,那么如何将8与时间戳字段进行比较呢 SELECT * FROM `reserve_Product` WHERE MONTH(`date`) = 8 您必须使用日期\格式 SELECT * FROM reserve_Product WHERE DATE_FORMAT(`date`, '%m') = 8 试试这个小把戏:即使您的查询是正确的,但由于月份函数的原因,它也不会使用索引,如果表太大,它的速度会很慢……所以如果您还需要性能,只需要2015年

我想得到一个月的记录,比如第8个月,也就是8月,那么如何将8与时间戳字段进行比较呢

SELECT * FROM `reserve_Product` WHERE MONTH(`date`) = 8

您必须使用日期\格式

SELECT * FROM reserve_Product WHERE DATE_FORMAT(`date`, '%m') = 8

试试这个小把戏:

即使您的查询是正确的,但由于月份函数的原因,它也不会使用索引,如果表太大,它的速度会很慢……所以如果您还需要性能,只需要2015年8月的数据,那么您可以使用下面的查询-

SELECT * FROM 
reserve_Product 
WHERE `date` >= '2015-08-01 00:00:00' and `date` <= '2015-08-31 23:59:59';
从中选择*
储备产品

其中'date`>='2015-08-01 00:00:00'和'date`比较是什么意思?我想获得一个月的记录,比如8月,也就是8月,那么我如何将8与时间戳fieldMONTH(FROM_UNIXTIME(a_better_column_name))进行比较呢