sql “=”优化

sql “=” 优化

禁止对“=”左侧字段使用函数、运算,避免在join、group by 中使用函数,这样可以让优化器更好的发挥作用

说明:如果在等号左侧进行表达式、函数操作,会导致数据库引擎放弃索引进行全表扫描

eg:

SELECT * FROM t2 WHERE score/10 = 9
SELECT * FROM t2 WHERE SUBSTR(username,1,2) = ‘li’

优化方式:可以将表达式、函数操作移动到等号右侧。如下:

SELECT * FROM t2 WHERE score = 10*9
SELECT * FROM t2 WHERE username LIKE ‘li%’

需注意:substr(str,1,2)可以用like 'li%'来替换,但是在字段开头进行模糊查询即(like ‘%li%’,还是会放弃索引而进行全表扫描)

猜你喜欢

转载自blog.csdn.net/weixin_40417658/article/details/85112773