mysql优化(二)

SQL语句及索引的优化

explain分析sql语句

MySQL中explain的type类型

|  ALL              |  全表扫描

|  index            |  索引全扫描

|  range            |  索引范围扫描,常用语<,<=,>=,between等操作

|  ref                |  使用非唯一索引扫描或唯一索引前缀扫描,返回单条记录,常出现在关联查询中

|  eq_ref           |  类似ref,区别在于使用的是唯一索引,使用主键的关联查询

|  const/system  |  单条记录,系统会把匹配行中的其他列作为常数处理,如主键或唯一索引查询

|  null                |  MySQL不访问任何表或索引,直接返回结果

 

####由上至下,效率越来越高

https://www.cnblogs.com/xuanzhi201111/p/4175635.html(mysql explain 字段详情)

Count()和Max()的优化

注意:(1)在使用count(*)和count(id)时可能统计数是不一样的,因为count(id)查询的不包含值为null的情况,count(*)则包含值为null的情况。

在使用Max()时,对查询的字段加上索引能够提高查询效率。

子查询的优化

Group by子句的优化

Limit查询优化

如何选择合适的列做索引

索引的维护及优化

 

 

猜你喜欢

转载自blog.csdn.net/xingqibaing/article/details/82732222