在实际运用过程中,当我们需要对MySQL数据库中查询的语句进行分页处理时,通常使用的是limit方法。 基础语法为
select *
from table_name limit (page-
1)*
num,
num
这个语句是最简单的分页查询语法,但是当我们所查询到的数据条数趋于百万甚至千万级别时,这个方法的速度将会越来越慢最后导致服务器请求超时,在这种大数据量情况下,我们需要采用一步子表查询即
select *
from table_name
where id >= (
select id
from table_name limit (page-
1)*num,
1) limit num
那么到这里我们就可以轻松写出带有查询条件的分页查询语句了
SELECT * FROM table_name
WHERE id >= (select id from table_name
where 你的查询条件 limit (page-1)*num,1)
and 你的查询条件 limit num ;