一、Mysql的分页

(一)、MySQL分页的实现,使用关键字:Limit

     语法:select * from tableName Limit A,B;

   注释:tableName:表名

    A:查询的起始点(如果A不写的话,默认从0开始)==》(当前页码*页面容量-1 )

    B:获得数据的条数(即每页显示的条数)===》页面容量

 注意:唯一需要注意的问题就是确保使用了索引

例子:

SQL查询:  从表第二条记录开始,获取两条记录
SELECT * FROM edi_test_task order by update_dt desc Limit 2,2;

(二)、查询原理:

  Limit A,B的意思是:  扫描满足条件的A+B行后,扔掉前面的A行,返回需要的B行结果。

    如:limit 2,2;   扫描4行后,扔掉前面的2行,返回后面的2行;

  注:对于数据量不大的时候,这样简单的写法是可以的。但是当大数据的时候,就会影响性能。

    如果是limit 100000,100,需要扫描100100行,在一个高并发的应用里,每次查询需要扫描超过10W行,性能肯定大打折扣。

(三)、大数据量  提高分页效率的方法

  1、对于是可以比较的主键(索引)字段可用这种方法:

    SELECT * FROM table WHERE id BETWEEN (currentPage-1)*pageSzie   AND  currentPage*pageSzie;

或者:select id,title from collect where id>=(select id from collect order by id limit 90000,1) limit 10;   :90000:获得起点的位置

  2、Join 连接查询

SELECT * FROM `edi_test_task`  AS t1
RIGHT JOIN (SELECT task_id FROM `edi_test_task` ORDER BY task_id desc LIMIT 600,9) AS t2 on t1.task_id=t2.task_id

意思:先通过查询得到索引的Id,然后根据索引获得所需的数据。

3、创建索引表

  建一个索引表: t (id,title,vtype) 并设置成定长,然后做分页,分页出结果再到 collect 里面去找info 。 【复合索引,如果有where字句的话,可以使用复合索引。】

最新文章

  1. 全网络最正确的让 Linux 开机进入字符界面的方法及设置 FrameBuffer 分辨率的方法
  2. DOM0,DOM2,DOM3 事件基础知识
  3. SQL Server里的闩锁耦合(Latch Coupling)
  4. HDU 4920 居然会超时
  5. char、wchar_t、strlen、wcslen
  6. 与你相遇好幸运,Sail.js创建.sailsrc文件
  7. LevelDB源码之四LOG文件
  8. homework-09
  9. 问题:关于贴友一个用js传递value默认值的简单实现
  10. matlab中的sub2ind函数
  11. python小技巧01递归解释内嵌
  12. windows 10隐藏各种文件夹
  13. vue2 -- axios
  14. ueditor富文本编辑器跨域上传图片解决办法
  15. Zookeeper 集群搭建--单机伪分布式集群
  16. R kernel for Jupyter Notebook 支持r
  17. 使用java api操作HDFS文件
  18. charles https抓包
  19. OpenCV 常用汇总
  20. springboot成神之——application.properties所有可用属性

热门文章

  1. HDOJ/HDU 1200 To and Fro(加密解密字符串)
  2. Linux IIO子系统分析
  3. 3 weekend110的配置hadoop(格式化) + 一些问题解决 + 未免密码配置
  4. 多目标遗传算法 ------ NSGA-II (部分源码解析) 拥挤距离计算 crowddist.c
  5. art template前端模板引擎
  6. win8笔记本无法搜索wifi信号找不到WLAN该 wifi共享特别注意的服务
  7. MVC-@html.ActionLink的几种参数格式
  8. [D3] 8. Margins
  9. Performing a thread dump in Linux or Windows--reference
  10. Response乱码的解决方法