【产品名称】
【产品版本】
【问题描述】
我发现我们一些sql中都用了find_in_set函数,导致很多都全表扫描,请问下这种函数如何优化哪?改成in ?
还是是否有函数索引?
【产品名称】
【产品版本】
【问题描述】
我发现我们一些sql中都用了find_in_set函数,导致很多都全表扫描,请问下这种函数如何优化哪?改成in ?
还是是否有函数索引?
可以看看explain,为啥没有走索引
可以使用函数索引,试试类似这样的用法
CREATE TABLE t (c1 varchar(100), c2 BIGINT UNSIGNED AS (find_in_set('a', c1)) VIRTUAL, INDEX (c2)); SELECT * FROM t WHERE find_in_set('a', c1) > 2;
计划显示使用了c2上的索引