有没有办法以更快的方式将LIKE与列连接?

时间:2018-09-14 06:49:24

标签: mysql optimization query-optimization

我想从表es_goodsSearch中获得行,其中列goodsNm 包含word表中名为es_manageCleanWords的列中的任何单词,该单词在整个表中包含约10,000行。 因此,我通过以下方式进行查询。

SELECT * FROM es_goodsSearch g 
LEFT JOIN  es_manageCleanWords  as emc 
ON  g.goodsNm LIKE CONCAT('%', emc.word,'%');

问题是查询太慢而无法在生产环境中使用它。我怎么解决这个问题? 下表是我的解释结果和索引结果。

es_goodsSearch explain image

es_manageCleanWords explain image

es_goodsSearch index info

es_manageCleanWords index info

0 个答案:

没有答案