利用reverse索引优化like语句的方法

本文介绍了在Oracle数据库中,如何通过创建reverse索引来优化前like查询。通常,前like操作无法利用索引,导致查询效率低下。通过创建reverse索引并反转查询条件,可以将前like变为后like,从而提高查询速度。具体步骤包括创建reverse索引和调整查询语句,实测显示查询效率有显著提升。
摘要由CSDN通过智能技术生成
我们在 Oracle中使用like查询时,如果是后like(like '111%'),是可以使用索引的,但前like(like  '%111')时。不会正常去走字段的索引。
建议使用 reverse索引的形式进行优化,首先优化索引:    create index 索引名 on 表名( reverse(字段名) );
然后使用时     select A.XXX FROM 表名 A WHERE  reverse(字段名) like  reverse('%123');
调整后可以通过执行计划可以发现,在使用 reverse索引后查询效率大幅提升。
使用reverse函数索引将索引数据反转,SQL中的where条件中将值反转,这样就将前%改为后%。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值