`

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;

 

分享到:
评论
1 楼 skying007 2017-02-24  

相关推荐

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

    使用contains谓词有个条件,那就是列要建立索引,本节主要介绍了oracle使用instr或like方法判断是否包含字符串,需要的朋友可以参考下

    如何用oracle 截取两个相同字符串之间的字符

    在实际工作中经常遇到截取两个相同字符串之间的字符的oracle问题,以下是相关语句

    instr()函数功能,判断目标字符串是否存在于第一个字符串中

    NULL 博文链接:https://tangkuo.iteye.com/blog/2257112

    oracle数据库截取字符串

    oracle 截取字符(substr),检索字符位置(instr) case when then else end语句使用

    Oracle字符串处理函数

    Oracle字符串处理函数: 1.ASCII;2.CHR;3.CONCAT;4.INITCAP;5.INSTR(C1,C2,I,J);6.LENGTH;7.LOWER; 8.UPPER;9.RPAD和LPAD(粘贴字符);10.LTRIM和RTRIM......

    Oracle 基础语句 函数大全(字符串函数

    ORACLE PL/SQL 字符串函数、数学函数、日期函数 --【字符串函数】 --字符串截取substr(字段名,起始点,个数) select Name,substr(Name,2,4),substr(Name,0,3),substr(Name,-2,3),substr(Name,-2,1) from t1; --字符...

    oracle截取字符(substr)检索字符位置(instr)示例介绍

    oracle 截取字符(substr),检索字符位置(instr) case when then else end语句使用 收藏 常用函数:substr和instr 1.SUBSTR(string,start_position,[length]) 求子字符串,返回字符串 解释:string 元字符串 start_...

    Oracle中instr函数使用方法

    INSTR (源字符串, 目标字符串, 起始位置, 匹配序号) 在Oracle/PLSQL中,instr函数返回要截取的字符串在源字符串中的位置。只检索一次,就是说从字符的开始到字符的结尾就结束。 语法如下: instr( string1, string2 ...

    Oracle中字符串截取常用方法总结【推荐】

    substr 函数:截取字符串  语法:SUBSTR(string,start, [length]) string:表示源字符串,即要截取的字符串。 start:开始位置,从1开始查找。如果start是负数,则从string字符串末尾开始算起。 length:可选项...

    asp字符串处理函数大全

    InStr InStr(string1,string2[,compare]) 返回string1字符串在string2字符串中第一次出现的位置 Split Split(string1,delimiter[,count[,start]]) 将字符串根据delimiter拆分成一维数组,其中delimiter用于标识子...

    Oracle中Like与Instr模糊查询性能大比拼

    t表中将近有1100万数据,很多时候,我们要进行字符串匹配,在SQL语句中,我们通常使用like来达到我们搜索的目标。但经过实际测试发现,like的效率与instr函数差别相当大。下面是一些测试结果:  SQL> set timing ...

    Oracle中的instr()函数应用及使用详解

    格式一:instr( string1, string2 ) // instr(源字符串, 目标字符串) 格式二:instr( string1, string2 [, start_position [, nth_appearance ] ] ) // instr(源字符串, 目标字符串, 起始位置, 匹配序号) 解析:...

    vb.net字符串转换

    InStr InStr(string1,string2[, compare]) 返回string1字符串在string2字符串中第一次出现的位置 Split Split(string1,delimiter[, count[, start]]) 将字符串根据delimiter拆分成一维数组,其中delimiter用于标识...

    灵活截取字符串

    对于截取字符串,Oracle中有两个函数substr(),instr()截取规则的字符串使用起来较为方便,这里重新封装了一个函数 --调用函数参数说明: --num_char(str1 varchar2,str2 varchar2,indexs number) --str1 原字符串 --...

    Oracle中的INSTR,NVL和SUBSTR函数的用法详解

    INSTR(源字符串, 要查找的字符串, 从第几个字符开始, 要找到第几个匹配的序号) 返回找到的位置,如果找不到则返回0. 例如:INSTR('CORPORATE FLOOR','OR', 3, 2)中,源字符串为'CORPORATE FLOOR', 在字符串中查找’...

    informix数据库实现oracle环境instr函数功能

    informix数据库实现oracle环境instr函数功能

Global site tag (gtag.js) - Google Analytics