MYSQL不会返回第一行

时间:2013-12-08 08:08:22

标签: php mysql

$Day = mysqli_real_escape_string($Connection, $_GET['day']); //1
$Str = "-".$Day." day"; //"-1 day"
$MinRange = date("Y-m-d", strtotime($Str))." 00:00:00"; //2013-12-07 00:00:00
$MaxRange = date("Y-m-d", strtotime($Str))." 23:59:59"; //2013-12-07 23:59:59
$query = mysqli_query($Connection, "SELECT * FROM `counter` WHERE time BETWEEN '{$MinRange}' AND '{$MaxRange}'") or die (mysqli_error($Connection));

while($Counter = mysqli_fetch_array($query))  
{  
echo $Counter['id'];  
}

它总是跳过第一行但是当我不使用范围时它仍然不起作用,可能是循环问题?我看到人们使用这个循环没有问题

2 个答案:

答案 0 :(得分:0)

如果您的代码除第一行外有效,您需要在前一天23:59:59开始搜索,或者尝试添加LIMIT 0,30,第二个数字可以是您想要的任何数字,看看是否有效。

答案 1 :(得分:0)

这是我的回答,我的猜测是你有某种ID是主键:

"SELECT * FROM `counter` WHERE time BETWEEN '{$MinRange}' AND '{$MaxRange} ORDER BY `id` DESC"

这将返回ONE值,这将是最新记录。