有人可以告诉我两者之间的区别吗INSTR
and LIKE
在甲骨文中?
Oracle10g中哪一个更快?
这取决于数据和模式。如果你使用like 'a%'
,那么 Oracle 可以使用 BTree 索引来查找匹配项,因为它可以以模式开头搜索 BTree,然后仅考虑子树。
这不适用于LIKE '%a'
但您可以通过创建一个计算列来解决此问题,该列会反转您要搜索的列中的所有值(因此您会得到上面的模式)。
如果使用散列索引,Oracle 只能扫描整个索引。当只有很少的不同值时,它可能会更快。
我不确定是否INSTR
可以使用索引,因为它没有固定的锚点。
就像所有性能问题一样:
- 用一些实际的测试数据填充数据库并运行一些测试。
- 始终以以后可以轻松优化的方式编写代码,当您know关于瓶颈
- 永远不要猜测什么可能会很慢。 90%的时间你都会错。始终测量。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)