在这个问题“Divide numbers into equal parts to create Sitemap from mysql”的帮助下,我得到了这个结果:
Array ( [0] => 0,500
[1] => 500,1000
[2] => 1000,1500
[3] => 1500,2000
[4] => 2000,2500
[5] => 2500,2990 )
我的问题是,我想传递上面的数组值来选择查询限制。像这样:
"SELECT * FROM `table_name` WHERE `rec_id`='1' limit 0 OFFSET 500 "
等等limit 2500, 2990
。
怎么做?我是发展新手。请帮我解决。
提前谢谢。
答案 0 :(得分:1)
这是代码
foreach($arr as $k => $v){
list($limit, $offset) = explode(','$v);
$query_arr[] = "SELECT * FROM `table_name` WHERE `rec_id`='1' limit $limit OFFSET $offset";
}
然后根据需要点击$ query_arr
答案 1 :(得分:1)
实际上你想要一个以索引开头的500个结果的分页,对吧?所以限制应该总是500,只有偏移值才会改变。
$queries = [];
$array = Array ( [0] => 0,500
[1] => 500,1000
[2] => 1000,1500
[3] => 1500,2000
[4] => 2000,2500
[5] => 2500,2990 );
foreach ( $array as $value ){
$offsets = explode(',', $value);
$queries[] = "SELECT * FROM `table_name` WHERE `rec_id`='1' limit 500 OFFSET $offsets[0]";
}