Php 如何在MySQL中检索两个日期之间的所有行?
我有一个问题,希望得到答案 现在,我想根据特定日期从数据库中检索一些数据 所以我在数据库中有一个叫做flights的表。此表中存储了一些航班数据 我编写了一个简单的代码来检索间隔时间内的航班: 假设我想获得2015年11月24日至2015年12月3日的航班 但问题是,到了新的一个月,程序就崩溃了。我使用了一个for循环,所以它永远都在检索数据 如何在php中增加日期 这是我的密码:Php 如何在MySQL中检索两个日期之间的所有行?,php,mysql,Php,Mysql,我有一个问题,希望得到答案 现在,我想根据特定日期从数据库中检索一些数据 所以我在数据库中有一个叫做flights的表。此表中存储了一些航班数据 我编写了一个简单的代码来检索间隔时间内的航班: 假设我想获得2015年11月24日至2015年12月3日的航班 但问题是,到了新的一个月,程序就崩溃了。我使用了一个for循环,所以它永远都在检索数据 如何在php中增加日期 这是我的密码: <?php for($i = $date1; $i <= $date2; $i++) { $sql3
<?php
for($i = $date1; $i <= $date2; $i++)
{
$sql3 = "select * from flights where flight_date = '$i'";
$query3 = mysql_query($sql3);
$numrows3 = mysql_num_rows($query3);
if($numrows3 > 0)
{
// retrieve flights.
}
} // end of for loop
?>
让MySQL获取所需的所有行比发出多个查询要高效得多,例如
select * from flights where flight_date between '2015-11-24' and '2015-12-03'
只需确保查询中的日期格式正确(yyyy-mm-dd)。另外,请避免使用mysql_uu函数 让MySQL获取您需要的所有行比发出多个查询要高效得多,例如从航班日期介于“2015-11-24”和“2015-12-03”之间的航班中选择*,
,然后您还可以摆脱讨厌的for
循环++2.对于这种方法,服务器不喜欢你当你这样做的时候,请同时阅读:@PaulDixon非常感谢兄弟,这很有效。请写下来回答我的问题:)非常感谢,很高兴能帮助我:)。。。请对这个问题投赞成票,这样就不必再投反对票了,因为这不是一个模棱两可的问题。