我将把一个 sql 查询结果分成两部分。我想这样做的原因是我只想让我的服务器首先处理 20 个项目,然后处理sleep
其余部分。
在sql中如何将查询分成多个查询,mysql_query
以便我可以一个接一个地单独处理这些部分?
我的愿景是这样的:
if(mysql_row_nums($sql)>20){
handle only 20 items
} else {
handle all
}
谢谢阅读。
您可以通过limit 0,20
在查询中设置来做到这一点
限制用于将您的 MySQL 查询结果限制在指定范围内。您可以使用它来显示前 X 个结果,或显示 X - Y 结果的范围。
查看 SQL LIMIT 参数: LIMIT
尝试
if(mysql_num_rows($sql)>20){
$i = 0;
while($result = mysql_fetch_array($sql)){
$i++;
if($i <= 20){
// do some thing with first 20 result
var_dump($result);
}
if($i == 20){
// if we have arrived to result #20 stop excuting script for minute
sleep(60); // 60 = 1 minute ;
}
if($i > 20){
// continue dealing with result after first 20 result.
}
}
}