like ‘%ids%‘ 索引失效解决方法

想必各位兄弟们遇到like模糊匹配的时候,导致索引失效吧。sql查询速度太慢。

没事 我总结了2种方法:

一种就是

like '%#{ids}%'   
改成   --->  
like '#{ids}%'

当然,这个可能是不太符合匹配需求,莫慌,还有一种:

like '%#{ids}%'


改成----->

like "'%{ids}%'"

举个荔枝:

like ‘%ids%‘ 索引失效解决方法_第1张图片

 这样是索引失效的

那么改成

like ‘%ids%‘ 索引失效解决方法_第2张图片

这是我表结构中的索引:

like ‘%ids%‘ 索引失效解决方法_第3张图片

我的SQL代码:

@Select("SELECT * FROM t_zhanhui_exhibition_table where (pid = '${pid}' or exhibition_ids like \"'%${pid}%'\") and is_show = 1 ")

这样子的话,就匹配到索引啦!

你可能感兴趣的:(sql,mysql,性能优化)