美文网首页
【MySql】优化总结

【MySql】优化总结

作者: Y了个J | 来源:发表于2019-03-24 22:02 被阅读0次

1.SQL语句优化
1)应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。
2)应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:
select id from t where num is null
可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:
select id from t where num=0
3)很多时候用 exists 代替 in 是一个好的选择
4)用Where子句替换HAVING 子句 因为HAVING 只会在检索出所有记录之后才对结果集进行过滤
5)应尽量避免在 where 子句中使用 or 来连接条件,否则将导致引擎放弃使用索引而进行全表扫描,如:
select id from t where num=10 or num=20
可以这样查询:
select id from t where num=10 union all select id from t where num=20
  
下面的查询也将导致全表扫描:
select id from t where name like '%abc%'
in 和 not in 也要慎用,否则会导致全表扫描,如:
select id from t where num in(1,2,3)
对于连续的数值,能用 between 就不要用 in 了:
select id from t where num between 1 and 3

2.索引优化

3.数据库结构优化
案例: 简单购物系统暂设涉及如下表: 1.产品表(数据量10w,稳定) 2.订单表(数据量200w,且有增长趋势) 3.用户表 (数据量100w,且有增长趋势)
方案: 用户表通过性别拆分为男用户表和女用户表,订单表通过已完成和完成中拆分为已完成订单和未完成订单

4.服务器硬件优化

相关文章

  • 17.MySQL优化

    《高性能MySQL》——这本书都有的 “字段”优化总结 “索引”优化总结 索引的优化 “查询SQL”优化总结 “引...

  • mysql程序

    MySQL性能优化方案总结

  • 项目中常用的19条MySQL优化

    本文总结了19条关于Mysql的优化方案,本文的优化方案都是基于 “ Mysql-索引-BTree类型 ” 的。希...

  • 深入学习MySQL优化

    MySQL高性能优化实战总结 MySQL 的查询过程如下图,很多的查询优化工作实际上就是遵循一些原则。 优化的哲学...

  • 转载:史上更全的 MySQL 高性能优化实战总结!

    转载:史上更全的 MySQL 高性能优化实战总结! 1 前言 2 优化的哲学 3 优化思路 3.1 优化什么 3....

  • MySQL 索引及查询优化总结-2018-03-20

    MySQL 索引及查询优化总结 文章《MySQL查询分析》讲述了使用MySQL慢查询和explain命令来定位my...

  • MySQL索引知多少

    mysql索引 总结关于mysql的索引,查询优化,SQL技巧等 1 索引类型 B-Tree索引 Hash索引 ...

  • 「mysql优化专题」本专题总结终章(13)

    一个月过去了,【mysql优化专题】围绕着mysql优化进行了十三篇的优化文章,下面进行一次完整的总结!我尝试用最...

  • MySQL 优化总结

    在CSDN上看到一篇关于MySQL优化基础的总结,但可以说是总结的很好。 1.对查询进行优化,要尽量避免全表扫描,...

  • MySQL优化总结

    1.SQL关键字的执行的顺序 from======》where======》group by======》havi...

网友评论

      本文标题:【MySql】优化总结

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