1.使用分页
最好的优化莫过于分页查询,使用 LIMIT page,size,这是提升查询速度最快的方法,面对百万级的数据谁也不能一次性显示完(数据统计、计算除外),所以这是最佳选择。
2.数据库表设计
表设计合理也会极大的增加查询效率
(1). 如果此表的作用是日志记录,都是insert和select并无其他操作,表引擎建成myisam为最合适的选择。如果修改编辑操作多则不建议使用。
(2).对主键没有特殊的要求和条件,应该设置主键为数字并且自增也会提升查询效率。
(3).对查询条件加上索引,但是对于字段值过长或者否定性不是很强的不用加上索引,。
(4).对于固定的数据类型的长度用最合适的长度。
(5).避免使用视图,会增大对数据库维护成本
(6).避免使用存储过程,会增大对数据库的维护成本,并且存储过程计算处理数据会影响数据库性难

2.查询优化,使用执行计划分析

MySQL提供explain/desc命令输出执行计划,我们通过执行计划优化SQL语句。

(1).应尽量避免在 where 子句中使用 or 来连接条件,否则将导致引擎放弃使用索引而进行全表扫描
(2).减少使用模糊查询,如要使用,请尽量使用半模糊。


明显的看到全模糊会慢于半模糊,因为全模糊会放弃使用索引

(3)这里可以看见我查总数的时候用到的count(*),***现在有很多争论的就是count(1)和count(✳),其实两者并无明显差异,当where条件无索引的时候,count(1)快些,有索引的情况下是一样的。
(4)使用exists代替in查询(适用于A表数据量小于B表数据量)

(5)少用子查询,尽量能用关联查询就使用关联查询

mysql查询优化方案相关推荐

  1. 再见了 SELECT * !大厂的 MySQL 查询优化方案,确实牛逼!

    Java研发工程师必备技能非MySQL莫属,虽说易学好上手,但应对大厂面试,最容易遭遇滑铁卢.功败垂成的也是它. 上手简单,玩转难,才是这款开源数据库叱咤业界多年的真实写照. MySQL 8.0正式版 ...

  2. 再见了 SELECT *!大厂的 MySQL 查询优化方案,确实牛逼!

    Java 研发工程师必备技能非 MySQL 莫属,虽说易学好上手,但应对大厂面试,最容易遭遇滑铁卢.功败垂成的也是它. 上手简单,玩转难,才是这款开源数据库叱咤业界多年的真实写照. MySQL 8.0 ...

  3. mysql慢查询优化方案

    文章目录 1. 分页查询优化 2. 最左前缀原则,覆盖索引优化 ①:覆盖索引优化 ②:索引下推优化 like xx% ③:Order by与Group by优化 ④:长字符串前缀索引优化 ⑤:避免小基 ...

  4. Mysql数据库千万级数据查询优化方案

    Mysql数据库中一个表里有一千多万条数据,怎么快速的查出第900万条后的100条数据? 面试官问:Mysql数据库千万级数据查询优化方案- 首先创建一张表,里面模拟了1000w数据: CREATE ...

  5. mysql优化php面试_php面试专题---18、MySQL查询优化考点

    php面试专题---18.MySQL查询优化考点 一.总结 一句话总结: 慢查询:查找分析查询速度慢的原因 数据访问:优化查询过程中的数据访问 长难句:优化长难的查询语句 特定类型:优化特定类型的查询 ...

  6. MySQL查询优化:GROUP BY

    目录 一.group by group by 优化方法 - 索引 松散索引扫描(Loose Index Scan) 为什么松散索引扫描的效率会很高? 紧凑索引扫描(Tight Index Scan) ...

  7. Mysql查询优化之IN子查询优化

    物化表 首先提出一个不相关的IN子查询 SELECT * FROM s1 WHERE key1 IN (SELECT common_field FROM s2 WHERE key3 = 'a'); 对 ...

  8. MYSQL查询优化器

    MYSQL 逻辑结构 MySQL 使用典型的客户端/服务器(Client/Server)结构, 体系结构大体可以分为三层:客户端.服务器层以及存储引擎层.其中,服务器层又包括了连接管理.查询缓存 .S ...

  9. 开发直播软件平台,数据表查询优化方案

    开发直播软件平台,业内通常使用Mysql进行数据库方面的开发,以下是云豹科技常用的几种数据表查询优化方案,分享给大家. 方法1: 优化方法: 1.查询条件调整,把时间查询单独摘出来用TP5新增的whe ...

最新文章

  1. vagrant学习笔记
  2. php 文档标示规范,php标识
  3. 去掉我的电脑中WPS,百度云,360,爱奇艺盘符
  4. 删除已有的 HTML 元素
  5. 找出连续最长数字串python_字符串中找出连续最长的数字字符串的实例代码
  6. Spark RDD中cache和persist的区别
  7. 如何在web api中使用SignalR
  8. spring 文件变化监听_Spring新变化
  9. 人才招聘中的“笔迹分析技术”
  10. 什么叫机械硬盘_企业级机械硬盘和普通机械硬盘有什么区别
  11. Centos 7.5 1804 镜像下载
  12. 所谓领导力,指的是这21种能力
  13. python内置函数视频_建议你吃透 Python 的 68 个内置函数!(附Python 400集视频教程)...
  14. 如何进行隐私协议测试
  15. 小满Router(第一章入门)
  16. jq设置保留两位小数_js保留两位小数方法总结
  17. 用Python画大学物理实验曲线
  18. 吉林省四平市谷歌高清卫星地图下载
  19. Babylon.js 第19章 体积光散射后期处理
  20. 微信美食菜谱小程序系统毕业设计毕设(4)开题报告

热门文章

  1. OKHttp源码分析2 - Request的创建和发送
  2. UVa12325 宝藏
  3. mac中执行命令ifconfig: invalid arguments
  4. ubuntu16.04 误删文件找回
  5. Shardingsphere的分库分表+读写分离+分页条件查询
  6. 手机基站伪装潜伏引强烈关注
  7. 手把手教你爬取网站信息
  8. 国内微博客前景黯淡的两个原因
  9. 需求分析之数据流图学习
  10. 炒股配资的杠杆是几倍?