MySQL limit子句及分页使用--A8站 源码交易平台

  • 时间:2020-03-29 09:34 编辑:益达 来源:原创 阅读:502
  • 扫一扫,手机访问
摘要:where…limit…性能基本安稳,受偏移量和行数的影响不大,而单纯选用limit的话,受偏移量的影响很大,当偏移量大到必定后性能开始大幅下降。不过在数据量不大的状况下,两者的差异不大。

Limit子句能够被用于强制 SELECT 句子回来指定的记载数。Limit承受一个或两个数字参数。A8站 源码交易平台

参数必须是一个整数常量。假如给定两个参数,第一个参数指定第一个回来记载行的偏移量,

第二个参数指定回来记载行的最大数目。

//初始记载行的偏移量是 0(而不是 1):

mysql> SELECT * FROM table LIMIT 5,10; //检索记载行6-15

//为了检索从某一个偏移量到记载集的完毕所有的记载行,能够指定第二个参数为 -1:

mysql> SELECT * FROM table LIMIT 95,-1; // 检索记载行 96-last,并非每个版本都能完成

//假如只给定一个参数,它表明回来最大的记载行数目。换句话说,LIMIT n 等价于 LIMIT 0,n

mysql> SELECT * FROM table LIMIT 5; //检索前 5 个记载行

Limit的功率高?A8站 源码交易平台

常说的Limit的执行功率高,是对于一种特定条件下来说的:即数据库的数量很大,可是只需要查询一部分数据的状况。

高功率的原理是:防止全表扫描,进步查询功率。

比方:每个用户的email是唯一的,假如用户运用email作为用户名登陆的话,就需要查询出email对应的一条记载。
A8站 源码交易平台
SELECT * FROM t_user WHERE email=?;

上面的句子完成了查询email对应的一条用户信息,可是由于email这一列没有加索引,会导致全表扫描,功率会很低。

SELECT * FROM t_user WHERE email=? LIMIT 1;

加上LIMIT 1,只需找到了对应的一条记载,就不会持续向下扫描了,功率会大大进步。

Limit的功率低?

在一种状况下,运用limit功率低,那就是:只运用limit来查询句子,并且偏移量特别大的状况

做以下试验:

句子1:
select * from table limit 150000,1000;

句子2:
select * from table while id>=150000 limit 1000;

句子1为0.2077秒;句子2为0.0063秒

两条句子的时间比是:句子1/句子2=32.968

比较以上的数据时,咱们能够发现选用where…limit…性能基本安稳,受偏移量和行数的影响不大,而单纯选用limit的话,受偏移量的影响很大,当偏移量大到必定后性能开始大幅下降。不过在数据量不大的状况下,两者的差异不大。

所以应领先运用where等查询句子,合作limit运用,功率才高

ps:在sql句子中,limit关键字是最终才用到的。以下条件的出现顺序一般是:where->group by->having-order by->limit




## 分页使用[种子]

经过limit和offset 或只经过limit能够完成**分页功能**。

假定 pageSize表明每页要显现的条数,pageNumber表明页码,那么 回来第pageNumber页,每页条数为pageSize的sql句子:

代码示例:

句子3:select * from student limit (pageNumber-1)*pageSize,pageSize

句子4:select * from student limit pageSize offset (pageNumber-1)*pageSize
A8站 源码交易平台

  • 全部评论(0)
最新发布的资讯信息
【A8站-免费源码分享|直播源码】直播系统源码开发:关于安卓开发工具和obs直播推流(2020-10-30 09:41)
【计算机/互联网|】【独家修复】用户定制版短视频点赞系统,支持抖音+快手+刷宝+微视等所有主流短视频评论系统源码(2020-10-26 16:34)
【技术宅-为技术而疯|网站架设教程】【独家首发】最新更新已对接短信2020全新抖音快手点赞任务系统霸屏天下小红书头条威客兼职完整搭建架设视频教程(2020-10-25 13:56)
【技术宅-为技术而疯|网站架设教程】最新可用个人发卡网系统源码完整搭建架设视频教程(2020-10-25 10:53)
【技术宅-为技术而疯|网站架设教程】独家更新全新V10抢单系统唯品会京东淘宝自动抢单区块系统源码全开源抢单收单接单返利+搭建架设完整视频教程(2020-10-25 10:52)
【计算机/互联网|】柔丫纸尿裤云仓系统源码部署(2020-10-15 18:13)
【计算机/互联网|】侏罗纪软件模式定制开发(2020-10-14 15:33)
【计算机/互联网|】S2b2C供应商系统 营销闭环(2020-10-10 17:46)
【计算机/互联网|程序设计开发】盛都汇系统奖励机制(2020-10-10 17:20)
【A8站-免费源码分享|网站源码】积分商城系统APP开发(2020-09-23 14:56)
联系我们
Q Q:3101359898 点击直接对话
电话:18580901894
邮箱:admin#a8zhan.com
时间:09:00 - 24:00
手机二维码 访问手机版
返回顶部