美文网首页
ruby基础功能-mysql优化

ruby基础功能-mysql优化

作者: 葫芦葫芦快显灵 | 来源:发表于2019-07-22 07:34 被阅读0次

优化SQL,其实是优化查询优化器,使其按照我们的想法,帮助我们选折最优的执行方案

优化建议

  1. EXPLAIN

写在SQL前面,可以查看SQL的查询计划

  1. in 包含的值不应太多

MySQL对于IN做了相应的优化,是将IN的常量存储于一个数组中,并且有序排列,如果此时数值较多,产生的消耗就会很多
优化建议: 如果可以使用范围,就用范围表示

  1. SELECT语句尽可能标明字段名称

SELECT * 增加很多不必要的消耗;增加了使用覆盖索引的可能性,所以尽可能在SELECT后跟上的是字段名,而不是*

  1. 如果where条件中其他字段没有索引,尽量少用or

or两边的字段中,如果有一个不是索引字段,而其他条件也不是索引字段,会造成该查询不走索引的情况。很多时候使用union all或者是union(必要的时候)的方式来代替“or”会得到更好的效果

  1. 区分in和exists、not in和not exists
  2. 使用合理的分页方式以提高分页的效率

可以设置下一页的起点从而提高效率

  1. 避免在where子句中对字段进行null值判断

一旦条件中有null,那么就会导致引擎放弃索引而进行全表扫描

  1. 避免在where子句中对字段进行表达式操作

会导致引擎放弃索引而进行全表扫描

  1. 对于联合索引来说,要遵守最左前缀法则

where字句中出现最频繁的列放在最左边,如创建[A, B, C]联合索引,相当于创建了 (A)(A, B) (A, B, C) 这三种情况的索引

  1. 注意范围查询语句

对于联合索引来说,如果存在范围查询,比如between、>、<等条件时,会造成后面的索引字段失效

相关文章

  • ruby基础功能-mysql优化

    优化SQL,其实是优化查询优化器,使其按照我们的想法,帮助我们选折最优的执行方案 优化建议 EXPLAIN 写在S...

  • 如何做已有功能的优化?

    功能点的优化是最基础的工作 1、对功能点的不断优化就是迭代 2、不要期望用新加功能来解决老的功能问题 3、功能优化...

  • 4. 功能点的优化

    功能点的优化是最基础的工作 对功能点的不断优化就是迭代 不要期望用新功能来解决老功能的问题 功能点的优化和新功能设...

  • MySQL查询优化--Explain

    Explain是我们平时使用最多的MySQL优化关键字了,了解它的使用是掌握MySQL优化的基础。当在查询语句前加...

  • ruby基础功能-用户注册

    创建user表 rails g model user name:string email:string passw...

  • ruby基础功能-数据验证

    数据验证 验证表单提供的数据是否符合要求使用rails自带的内置辅助功能ActiveRecord Validati...

  • MySQL复制功能

    mysql复制功能 MySQL 内建的复制功能是构建大型,高性能应用程序的基础。将 MySQL 的 数据分布到到多...

  • PHP面试知识脉络(更新中)

    PHP基础知识Javascript、jQuery、ajax基础知识Linux基础知识MySQL数据库的基础与优化程...

  • MYSQL 基础优化

    语句优化 略 优化工具 检查问题常用工具: 不常用但好用的工具: 系统层面 cpu方面: vmstat、sar t...

  • Ruby基础知识-基础解释

    Ruby基础知识-基础解释 ruby相关的命令行ruby命令行

网友评论

      本文标题:ruby基础功能-mysql优化

      本文链接:https://www.haomeiwen.com/subject/gbjblctx.html