PHP DB分页查询优化

阅读 (2120)
通常情况,DB分页查询时,需要先知道总条数,再limit查数据,其实还可以进一步优化

通常不用框架封装的查询方法,php 进行 db查询时, 需要先查总条数

SELECT count(*) FROM my_table

然后再查分页数据

SELECT * FROM my_table limit 0,10

查询当页要显示的数据

这样的语句可以改成:

// select 带上 SQL_CALC_FOUND_ROWS 
SELECT SQL_CALC_FOUND_ROWS * FROM my_table limit 0, 10;
// 返回上一条不带limit查询结果总行数
SELECT FOUND_ROWS();  

这样只要执行一次较耗时的复杂查询可以同时得到与不带limit同样的记录条数

更新于:2018-06-01 15:45:34
返回顶部