专栏名称: 数据分析与开发
伯乐在线旗下账号,分享数据库相关技术文章、教程和工具,另外还包括数据库相关的工作。偶尔也谈谈程序员人生 :)
今天看啥  ›  专栏  ›  数据分析与开发

mysql 查询 limit 1000,10 和 limit 10 速度一样快吗?如果我要分页,我该怎么办?

数据分析与开发  · 公众号  · 数据库  · 2022-05-27 12:10
刷网站的时候,我们经常会遇到需要分页查询的场景。比如下图红框里的翻页功能。我们很容易能联想到可以用mysql实现。假设我们的建表sql是这样的mysql建表sql建表sql大家也不用扣细节,只需要知道id是主键,并且在user_name建了个非主键索引就够了,其他都不重要。为了实现分页。很容易联想到下面这样的sql语句。select * from page order by id limit offset, size;比如一页有10条数据。user表数据库原始状态第一页就是下面这样的sql语句。select * from page order by id limit 0, 10;第一百页就是select * from page order by id limit 990, 10;那么问题来了。用这种方式,同样都是拿10条数据,查第一页和第一百页的查询速度是一样的吗?为什么?两种limit的执行过程上面的两种查询方式。对应 limit offset, size 和 limit size  两种方式。而其实 limit size ,相当于



文章原文内容无法展示,请购买VIP后获取原文链接; 或者 使用第三方RSS订阅工具获取原文链接