如:select a,b, test(a) c from demo; --只这样查很快
select a,b,test(a)c from demo where test(a) like '%123%'; --这样就很慢
记录只有几十万条记录左右
索引是有的,只是业务要求是要用like '%%'的
追答你是指函数索引已经有了吗?加了函数索引如果还是使用like '%%'这样写法也用不到,加了hint也是full index扫描,速度可能会有改善,但不是最理想,
数据库结构,数据存取和应用段的设计应该是要结合的.你可以在应用段把数据存取做部分限制,或在结构设计上作写改变. 几乎没有银行让我们可以一次查10年来的所有的消费记录. 应用段也是可以改的.