普通分页语句:
SELECT * FROM tableName LIMIT (pageNo-1)*pageSize,pageSize
据说当查询语句中 (pageNo-1)*pageSize > 100 时会影响sql语句效率
tableName表的主键自增时 可以使用
SELECT * FROM tableName
WHERE c_id > =(select c_id from tableName limit (pageNo-1)*pageSize, 1)
limit pageSize
原理:当语句仅查询id时,会比查询所有列耗时短,于是上文先使用耗时较短的语句定位id位置,然后取后【pageSize】条数据
也可以用:
SELECT * FROM tableName a
JOIN
(select id from tableName limit (pageNo-1)*pageSize, pageSize) b
ON a.ID = b.id