您好,UncleToo欢迎您!  为了更好的浏览本站,请使用高版本浏览器
RSS  Tag     设为首页 | 加入收藏
 您所在的位置:首页 > 数据库技术 > Oracle

ORACLE使用contains、instr或like方法判断是否包含字符串

作者:linwenan  来源:转载  日期:2015-06-17 0:01:10
收藏  评论:( 0 )  阅读:526

ORACLE使用contains、instr或like方法判断是否包含字符串

如数据库中存储了海量的数据,当查询时使用like,速度明显变慢。
今天特意测试一下,发现可以使用instr函数来取代like的有明显的提高。

在1KW的的区间测试:
carnumber建立了索引,当然这个是对于某一个字段而言,但是有2个以上的字段,效果就更加明显。
contains:   建立索引的基础上.

select count(1) from passcar dd where instr(dd.carnumber,'粤') = 1 and dd.dcollDate >  sysdate - 1;  

使用instr

select count(1) from passcar dd where instrcontains(carnumber, '粤') and dd.dcollDate >  sysdate - 1;  

使用like 性能明显有所下降。

select count(1) from passcar dd where  dd.carnumber like '赣%'   and dd.dcollDate >  sysdate - 1;  

原文地址:http://linwenan.iteye.com/blog/2220161



除非特别声明,本站所有PHP教程及其他教程/文章均为原创、翻译或网友投稿,版权均归UncleToo中文网所有, 转载请注明作者及出处。
原文网址:http://www.uncletoo.com/html/oracle/1135.html
读完这篇文章后,你是否有所收获? 分享是一种生活的信念!
  • 0
  • 0
我来说两句
更多>>网友评论