Php 使用限制0,20无限滚动-如何限制总结果的数量?

Php 使用限制0,20无限滚动-如何限制总结果的数量?,php,mysql,pagination,Php,Mysql,Pagination,我有一个问题: select * from table where id is not null order by desc LIMIT :start, :limit ajax无限滚动/分页的开始和限制是存在的 如果我已经在分页中使用limit,如何限制总结果 我需要一个类似于以下内容的查询: select * from table where id is not null order by desc LIMIT :start, :limit LIMIT 5000 您可以在不使用查询的情况

我有一个问题:

 select * from table where id is not null order by desc LIMIT :start, :limit
ajax无限滚动/分页的开始和限制是存在的

如果我已经在分页中使用limit,如何限制总结果

我需要一个类似于以下内容的查询:

select * from table where id is not null order by desc LIMIT :start, :limit LIMIT 5000

您可以在不使用查询的情况下计算此值。如果您不希望结果超过5000个,那么这应该可以:

if (($start + $limit) <= 5000) {
    // Do query
}
else {
    // Don't do query, maximum limit reached
}

if($start+$limit)您可以在不使用查询的情况下计算此值。如果您不希望得到超过5000个结果,则应该可以:

if (($start + $limit) <= 5000) {
    // Do query
}
else {
    // Don't do query, maximum limit reached
}

if($start+$limit)您可以使用以下语法在数据库中创建视图:

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
注意:对于视图,您可以使用更简单的查询,因为视图已经选择了好的行(具有非空id),并对它们进行排序


可以使用以下语法在数据库中创建视图:

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
注意:对于视图,您可以使用更简单的查询,因为视图已经选择了好的行(具有非空id),并对它们进行排序


你的脚本是如何工作的?它是否从ajax获得开始和限制的顺序。比如:(0,20)、(21,20)、(41,20)等等?你的脚本是如何工作的?它是否从ajax获得开始和限制的顺序。比如:(0,20)、(21,20)、(41,20)等等?