> 백엔드 개발 > PHP 튜토리얼 > php、mysql怎么对特别大的数据量进行分页

php、mysql怎么对特别大的数据量进行分页

WBOY
풀어 주다: 2016-06-06 20:22:26
원래의
1538명이 탐색했습니다.

php怎么对特别大的数据量进行分页

回复内容:

php怎么对特别大的数据量进行分页

一般分页写法是:

<code>SELECT * FROM posts ORDER BY id DESC LIMIT $page_size OFFSET $offset
</code>
로그인 후 복사

不过当$offset很大时,速度会比较慢.

这时可以尝试使用"上一页"和"下一页"进行分页,比如:
60-41(上一页) 40-21(当前页) 20-01(下一页)
下一页(旧文章20篇):

<code>//page.php?id=-21 负数表示下一页旧文章 这里的21表示当前页最下面的文章的ID.
SELECT * FROM posts WHERE id </code>
로그인 후 복사

上一页(新文章20篇):

<code>//page.php?id=40  正数表示上一页新文章 这里的40表示当前页最上面的文章的ID.
SELECT * FROM posts WHERE id > 40 ORDER BY id ASC  LIMIT 20;
</code>
로그인 후 복사

得到的是升序ID序列,PHP使用array_reverse反转数组实现降序输出.

觉得负数不好看的话,可以额外加一个参数,比如:
page.php?action=next&id=21
page.php?action=prev&id=40

上面说了一个解决方案,我再说一个 延迟关联查询。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿