Home >Database >Mysql Tutorial >优化SQL语句需要注意的4点

优化SQL语句需要注意的4点

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-07 16:17:21966browse

1.尽量不要对列名进行函数处理。而是针对后面的值进行处理 例如where col1 = -5的效率比where -col1=5的效率要高 因为后面的条件对列值进行了计算。这样的条件下优化器无法使用索引 而是要针对所有值进行计算之后才能再比较 2.尽量使用和数剧列一样的值进行

  1.尽量不要对列名进行函数处理。而是针对后面的值进行处理

例如where col1 = -5的效率比where -col1=5的效率要高

因为后面的条件对列值进行了计算。这样的条件下优化器无法使用索引

而是要针对所有值进行计算之后才能再比较

2.尽量使用和数剧列一样的值进行操作

如果col1是数值型

那么例如where col1 = 2和where col1= ‘2′

则前者效率更高

因为比较字符和数值型的时候

引擎需要把两者都转化成双精度然后进行比较

3.减少函数的使用

例如where col1 >= ‘2009-10-26′ and col1
和where datediff(day,col1,getdate())=0

后者因为用到函数处理。所以col1上的索引又无法使用了

4.尽量不要用OR

一般对于OR的条件

优化器一般会使用全表扫描
 

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn