我有一个问题:
select * from table where id is not null order by desc LIMIT :start, :limit
ajax无限滚动/分页工作的开始和限制
如果我已经为分页使用限制,我如何限制总结果?
我需要一个类似于下面的查询:
select * from table where id is not null order by desc LIMIT :start, :limit LIMIT 5000
答案 0 :(得分:0)
您无需查询即可计算出来。如果您不想要超过5000个结果,这应该有效:
if (($start + $limit) <= 5000) {
// Do query
}
else {
// Don't do query, maximum limit reached
}
答案 1 :(得分:0)
您可以使用以下语法在数据库中创建视图:
create view view_name as select * from table where id is not null order by desc LIMIT 5000
然后你将查询ajax无限滚动/分页的视图
select * from view_name where id is not null order by desc LIMIT :start, :limit
注意:对于视图,您可以使用更简单的查询,因为视图已经选择了良好的行(具有非null id),并对它们进行排序。
select * from view_name LIMIT :start, :limit