MYSQL 不返回第一行


MYSQL doesn't return first row

$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'];  
}

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

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

这是我的

答案,我的猜测是你有某种 ID 作为主键:

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

这将返回一个值,这将是最新的记录。