千家信息网

MySQL的分页优化方案

发表于:2024-09-28 作者:千家信息网编辑
千家信息网最后更新 2024年09月28日,本篇内容主要讲解"MySQL的分页优化方案",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"MySQL的分页优化方案"吧!MySQL分页优化:SQL: sel
千家信息网最后更新 2024年09月28日MySQL的分页优化方案

本篇内容主要讲解"MySQL的分页优化方案",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"MySQL的分页优化方案"吧!

MySQL分页优化:

SQL: select * from t_user u order by id limit 5000000, 10分析:mysql会读取5000010条数据,然后只返回最后10条,查询的时间很长。优化方案:        方案一:只允许查询前面的数据,不允许查询特别靠后的数据。eg:百度搜索出的结果,最多七十多页。        方案二:在查询下一页时把上一页最后一条数据的id(lastId)传过来,即:select * from t_user u where id > 5000000 order by id limit 10                注意:如果where条件中的判断条件还有其它非主键列,则需要建立复合索引,复合索引中必须包含where语句中的列。        方案三:延迟关联非索引列,即:select * from t_user u1 inner join (select id from t_user  order by id limit 5000000, 10 ) u2 on u1.id=u2.id实验:        环境:win7下MySQL5.6                t_user表中有6,274,934条数据,以下是t_user的建表语句:                CREATE TABLE `t_user` (                        `id` BIGINT(20) NOT NULL AUTO_INCREMENT,                        `bu_id` INT(20) NOT NULL,                        `name` VARCHAR(255) NOT NULL,                        `age` INT(11) NOT NULL,                        `sex` VARCHAR(255) NULL DEFAULT NULL,                        PRIMARY KEY (`id`)                )                COLLATE='utf8_general_ci'                ENGINE=InnoDB;        select * from t_user u order by id limit 5000000, 10        # 2.746 sec           只有这一个查询sql时,查询所需的时间。        # 25.615 sec  有一个不断往t_user表中插新数据的函数(或过程)一直在跑的情况下,执行上面的sql查询出数据所需的时间。                select * from t_user u where id > 5000000 order by id limit 10        # 0.047 sec           只有这一个查询sql时,查询所需的时间。        # 0.063 sec           有一个不断往t_user表中插新数据的函数(或过程)一直在跑的情况下,执行上面的sql查询出数据所需的时间。        select * from t_user u1 inner join (select id from t_user  order by id limit 5000000, 10 ) u2 on u1.id=u2.id        # 2.137 sec           只有这一个查询sql时,查询所需的时间。        # 13.604 sec  有一个不断往t_user表中插新数据的函数(或过程)一直在跑的情况下,执行上面的sql查询出数据所需的时间。

到此,相信大家对"MySQL的分页优化方案"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

查询 数据 方案 时间 不断 函数 只有 情况 索引 过程 面的 内容 条件 语句 学习 实用 更深 兴趣 实用性 实际 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 服务器开机无法正常检测 租用服务器硬盘安全吗 海南特色软件开发 金山区市场软件开发服务费 信息网络安全基础 计算机网络技术包括哪两种 济南掌视界网络技术 网络安全esapi 说明文档 服务器上如何打开9001端口 数据库怎么创建用户角色u1 电信服务器招标华为 浦东新区市场软件开发管理系统 山西潮流软件开发过程服务标准 数据库系统与原理 pdf 新增服务器情况说明 计算机网络技术招文科生吗 网络技术服务中心经营范围 协同设计软件连不上服务器 苏州新型刀片服务器生产厂家 无线网络安全类型是什么原因 组态王 数据库取数赋值 中合汇富网络技术服务有限 第一次安装擎天软件 数据库 求职如何选择软件开发公司 js追加某个数据的数据库 电厂网络安全责任追究制度 核潜艇软件开发公司 电子商务 网络技术 花桥国际商务中专计算机网络技术 做网络安全的公司排名
0