逐步显示mysql数据库的结果

时间:2014-01-09 20:23:46

标签: php mysql

所以我正在使用庞大的英语单词MYSQL数据库。该列表有超过180k字。我试图运行一个查询,然后使用数据库中的每个单词计算一些东西。问题是数据库是如此之大,似乎冻结了我的浏览器(我在MAMP本地工作)。有没有办法我一次可以做五个查询,而不是试图贯穿整个事情,所以我可以在浏览器中逐渐看到结果?下面是代码:

<?php
require 'class.thing.php';
require 'db_config.php';
$result = mysql_query("SELECT * FROM words") or die ("Could not complete query");

while($row = mysql_fetch_array($result))
 {
    $word = $row['word'];
    $compute = $word."thing";
    $finished = new method( $compute );

   if ($finished->successfull()) {
      echo "<br/>";
      echo "worked!";
      echo "<br/>";
   } else {
      echo "uh oh..";
   }

}

?>

**我正在寻找类似的东西:

 $result = mysql_query("SELECT * FROM words") or die ("Could not complete query LIMIT 0,5");

get results

等待5秒

$result = mysql_query("SELECT * FROM words") or die ("Could not complete query LIMIT 0,5");

get results

等...

1 个答案:

答案 0 :(得分:-1)

你应该看看这个相关的问题:

What is the best way to paginate results in SQL Server

请注意,您可以按字母顺序比较SQL中的单词(检查您的设置是否使用区分大小写的排序),这样您就可以执行以下操作:

SELECT * FROM words WHERE word <= "ferrous" ORDER BY word

如果您正在使用自动递增ID,您也可以使用它进行细分(它可能更容易)。

修改

如下所述,您可以在MySQL中使用LIMIT

示例:

SELECT * FROM words LIMIT 0, 1000

(这将显示前1000个结果)。