php查询指定日期范围内数据

发布时间:2019-09-27编辑:脚本学堂
本文介绍下php查询指定时间范围内的数据的方法,学习下php时间查询与日期查询的办法,有需要的朋友参考下。

例如,想查询 2001-10-10  至 2002-10-11的所有数据。

如何编写sql语句,必须用时间戳吗?

有没有像asp中直接运算的日期函数
 

复制代码 代码示例:
CAST(dDateTime as DATE) between CAST('$begin_date' as DATE) and cast('$end_date' as date)
select * from tablename where time>='2001-10-10 00:00:00' and time <='2002-10-11 23:59:59';

mysql 日期的字段是date型的,只要 date> '2001-10-10' and date < '2002-10-10'
如果不是的话,按照以上字符串转为date型的,再比较。
当然字符串以一定要是日期的指定格式的字符串才能转换成功。

关键是看的表的属性是date类型 还是datetime类型  如果是达特类型 select * from ### where date <'2002-10-10' AND date>'2001-10-10';
如果是datetime类型 select * from ### where date <'2002-10-10 00:00:00' AND date>'2001-10-10 00:00:00';

如果时间字段是int类型...
只需.select * from table where SUBSTRING(FROM_UNIXTIME(时间字段名),1,10)>='2001-10-10'and SUBSTRING(FROM_UNIXTIME(时间字段名),1,10) <='2002-10-11';
 

复制代码 代码示例:

start_time="指定的时间";
$end_time=date("Y-m-d H:i:s A",(strtotime($define_time)+60*60*24*3));  // 3为想加的天数

// sql query;
$sql="select * from table where time>$start_time and time <$end_time order by field";

hp查询指定日期范围内的数据。(mysql数据库) 比如我想查询 2001-10-10 至 2002-10-11的所有数据。
select * from yourTaable where mydate between '2001-10-10' and '2002-10-11'