MySQL 不会返回所有行


mysql is not returning all the rows

这是我的查询:

  $sqlw = "SELECT * FROM coverages where user_id='3828' ORDER BY sp_id ASC";
  $resultw = mysql_query($sqlw);    
  $roww    = mysql_fetch_array($resultw);
  while ($roww = mysql_fetch_array($resultw)) {
  echo $roww['sp_id']."<br>";
      }
  echo "TOTAL:".mysql_num_rows($resultw)."<br>";

如您所见,它非常基本结果显示: 总数:29但是当我计算返回的项目列表时,它只有 28 个。我在phpmyadmin上运行查询,它总共显示29行,我确实计算了它们,它们是29。

我运行了不同的其他简单查询,它总是做同样的事情:缺少一行。这可能是微不足道的,也许我错过了一些东西,或者可能与它的服务器有关?任何帮助/想法将不胜感激。谢谢

在循环释放行之前对mysql_fetch_array()的调用。

您有一个经典的 off-byone 错误。

在循环开始之前,还有一个额外的$roww = mysql_fetch_array($resultw);。这意味着你要扔掉第一排。