如何控制SQL限制

时间:2012-08-27 02:35:56

标签: php

我想知道如何打印100条记录然后再打印100张记录。

我正在尝试使用以下代码来控制sql限制,但是想知道如何以正确的方式执行上述操作。

记录总数为x个数字

$check_starts=0;
$check_ends=100;

$sql = mysql_query("SELECT * FROM names limit $check_starts,$check_ends")
or die(mysql_error());

我想知道如何在每个区间内打印100条记录。

然后我需要在每100条记录后休息一下。

感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

免责声明:请使用PDOMysqli代替Mysql

要解决您的问题,您不会想要使用LIMIT子句。我假设您要检索所有记录,对吗? LIMIT子句仅用于检索特定的记录子集。

相反,当您获取每条记录时,请跟踪该号码。每100条记录,打印一张图片:

$i = 0;

while ($row = mysql_fetch_assoc($result)) {
    if ($i % 100 === 0) {
        // print the image
    }

    ++$i;
}

答案 1 :(得分:0)

我不确定这个问题,但是你想要达到这样的目标吗?

$start = 0;
$limit = 100;
$r = mysql_query("SELECT COUNT(*) FROM names");
$total = mysql_result($r,0);
while ( $start <= $total )
{
  $sql = mysql_query("SELECT * FROM names limit $start, $limit");
  while ( $d = mysql_fetch_array($sql) )
  {
    /* Do whatever */
  }
  /* Print image */
  $start += $limit;
}