美文网首页
Sql 性能优化

Sql 性能优化

作者: Linseed | 来源:发表于2021-12-29 19:03 被阅读0次

一、分析问题

  1. 查询所用的时间 set statistics time on set statistics time off
  2. set statistics io on set statistics io off 查看表io
  3. 查看sql 执行计划 了解性能消耗的sql位置 sql server

二、优化方法

  1. 表字段较多或者某个字段存储数据较大时查询部分字段 避免使用 select *
  2. 外键和join关联字段添加索引
  3. where条件字段添加索引
  4. select字段添加到索引include字段里,减少回表操作
  5. 状态枚举值少的索引效果不好,甚至会引发全表扫描
  6. 合理使用索引

三、索引失效

  1. or 条件 字段部分没有索引,部分有索引,(全有索引不会失效)
  2. 索引字段类型隐式转换
  3. where条件索引字段使用函数
  4. 索引字段数学计算
  5. 复合索引没有使用左列
  6. like以%开头
  7. 表数据量少,数据库认为全表查询比索引快时
  8. not 关键字 not in() not exist()

四、索引使用建议

  1. 索引列不要有NULL值 数据库中null值列不会包含在索引中
  2. 多条件使用复合索引加快查询速度
  3. 经常更新的列不要创建索引
  4. 枚举列 不要单独创建索引(可以使用复合索引)
  5. Select 字段可以包含到索引Include中

相关文章

  • 第一章 SQL性能优化简介

    第一章 SQL性能优化简介 InterSystems SQL支持几个特性来优化InterSystems IRIS®...

  • SQL语句的优化

    SQL语句的优化 如何索取有性能问题SQL的渠道 通过用户反馈获取存在性能问题的SQL 通过慢查日志获取存在性能问...

  • SQL语句的优化

    SQL语句的优化 如何索取有性能问题SQL的渠道 通过用户反馈获取存在性能问题的SQL 通过慢查日志获取存在性能问...

  • 干货系列——SQL语句的优化

    SQL语句的优化 如何索取有性能问题SQL的渠道 通过用户反馈获取存在性能问题的SQL 通过慢查日志获取存在性能问...

  • MySQL之SQL查询优化

    SQL查询优化 获取有性能问题的SQL 通过用户 通过慢查日志获取存在性能问题的SQL 实时获取存在性能问题的SQ...

  • SQL性能优化

    SQL性能优化 一、SQL的执行顺序 顺序:FROM——ON——JOIN——WHERE——GROUP BY——SU...

  • SQL性能优化

    SQL性能优化 一、SQL的执行顺序 顺序:FROM——ON——JOIN——WHERE——GROUP BY——SU...

  • MySQL性能管理及架构设计(三):SQL查询优化、分库分表 -

    一、SQL查询优化(重要) 1.1 获取有性能问题SQL的三种方式 通过用户反馈获取存在性能问题的SQL; 通过慢...

  • SQL查询优化,分库分表

    一、SQL查询优化(重要) 1.1 获取有性能问题SQL的三种方式 通过用户反馈获取存在性能问题的SQL; 通过慢...

  • Adaptive Execution 让 Spark SQL 更

    1 背景 前面《Spark SQL / Catalyst 内部原理 与 RBO》与《Spark SQL 性能优化再...

网友评论

      本文标题:Sql 性能优化

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