My Sql 高效分页

Posted gcczhongduan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了My Sql 高效分页相关的知识,希望对你有一定的参考价值。

/*
 *普通分页
 *在数据文件上偏移1000000查出10条
 */

select *
from zoldesk_92game_net_ecms_bj
where classid=303
ORDER BY id ASC
LIMIT 1000000,10 ;

/*
 *高效分页
 *1、在索引上查出起始索引
 *2、从起始索引上查出10条
 */

SELECT * from zoldesk_92game_net_ecms_bj WHERE id >=
(
    SELECT id
    FROM zoldesk_92game_net_ecms_bj
    where classid=303
    ORDER BY id ASC
    LIMIT 1000000, 1
)
and classid=303
ORDER BY id ASC
LIMIT 10 ;

这是楼下的办法

SELECT * from zoldesk_92game_net_ecms_bj WHERE id in    
(    
    SELECT id from 
    (
        SELECT id    
        FROM zoldesk_92game_net_ecms_bj    
        where classid=303    
        ORDER BY id ASC    
        LIMIT 1000000, 10    
    )
    AS temp
)


以上是关于My Sql 高效分页的主要内容,如果未能解决你的问题,请参考以下文章

Oracle, SQL Server, My SQL如何实现数据分页查询语句

mybatis动态sql片段与分页,排序,传参的使用

Symfony2 将哈希片段参数附加到分页 URL

oracle 高效分页查询SQL

ORACLE分页查询SQL语法——高效的分页

高效的 SQL 表合并和分页