--created by : wanglin
--created date : 2012-08-20
--created purpose: instr()函数,特殊用法,代替like,in
instr()返回值是目标字符(串)在母字符里第一次出现的位置,故而是整数。
例如:
instr("efabcdefg","e")的结果当然是1
instr(2,"efabcdefg","e")的结果就是7
instr(5,"efabcdefg","a")的结果就是0
instr("efabcdefg","k")的结果也是0
instr是内置函数,他是会走索引的,性能好。
like不一定:like '%iii%'是不走索引的,like 'ik%'走索引。
例如:
代替like:
SELECT code, name, dept, occupation FROM staff WHERE instr(code, '001') > 0;
等同于
SELECT code, name, dept, occupation FROM staff WHERE code LIKE '%001%' ;
代替in:
SELECT code , name , dept, occupation FROM staff WHERE code IN ('A10001','A10002');
等同于
SELECT code , name , dept, occupation FROM staff WHERE instr('A10001,A10002',code)>0
分享到:
相关推荐
VB 中 InStr 函数的使用和实现文本查找功能 VB 中的 InStr 函数是一个非常重要和常用的函数,它可以返回指定字符串在另一个字符串中最先出现的位置。其语法为 InStr([start, ]string1, string2[, compare]),其中 ...
### Informix数据库实现Oracle环境INSTR函数功能 在数据库领域,不同类型的数据库系统可能支持不同的SQL函数特性。例如,Oracle数据库中的`INSTR`函数用于查找一个字符串在另一个字符串中的位置,而Informix数据库...
Oracle数据库中的`substr`和`instr`函数是两个非常实用的字符串处理函数,它们在数据库查询和数据处理中扮演着重要角色。 `substr`函数,全称为“substring”,用于从一个字符串中截取一部分。其基本语法是: ```...
5. 集合函数:`IN`, `EXISTS`, `ALL`, `ANY`,处理集合间的比较。 6. 分组和排序:`GROUP BY`, `ORDER BY`, `DISTRIBUTE BY`, `SORT BY`,用于数据分组和排序。 7. 时间和日期函数:`YEAR`, `MONTH`, `DAY`, `HOUR`,...
Oracle instr 函数与 substr 函数详细说明 oracle 中的 instr 函数和 substr 函数是两种常用的字符串处理函数,它们可以用来处理和操作字符串数据。 Instr 函数 Instr 函数的主要作用是返回要截取的字符串在源...
INSTR (源字符串, 目标字符串, 起始位置, 匹配序号) 在Oracle/PLSQL中,instr函数返回要截取的字符串在源字符串中的位置。只检索一次,就是说从字符的开始到字符的结尾就结束。 语法如下: instr( string1, string2 ...
除了单独使用外,INSTR还可以与其他字符串处理函数(如SUBSTR等)结合使用,实现更复杂的数据处理需求。例如,可以使用INSTR确定子字符串的位置,再使用SUBSTR从主字符串中截取特定部分。 ##### 5.3 在查询条件中...
在博文链接中提到的`iteye.com`博客文章,可能详细解析了`instr()`函数的使用方法、示例和常见问题。通过阅读这篇文章,开发者可以深入理解如何在实际项目中有效利用此函数。 `main`这个文件名可能是相关代码的主...
虽然可以使用CHARINDEX函数或PATINDEX函数来实现类似的功能,但它们的使用方法和Instr函数有所不同。 在SQL Server数据库中,Instr函数不可用是因为该函数不符合SQL Server的语法规则。SQL Server数据库使用...
instr函数 instr函数用于从指定的位置开始,从大型对象中查找第N个与模式匹配的字符串。 用于查找内部大对象中的字符串的instr函数语法如下: dbms_lob.instr( lob_loc in blob, pattern in raw, offset in integer...
在本文中,我们将重点讨论四个常用的函数:locate()、instr()、position() 和 find_in_set(),并解析它们的使用方法。 1. **locate()** 函数: locate() 函数与 Java 的 `indexOf()` 方法类似,用于在一个字符串中...
Oracle分析函数是数据库管理系统Oracle中的一种高级查询工具,它们用于处理行集,计算基于特定窗口内的数据的聚合值。分析函数的主要特点是返回的结果不仅仅是一行,而是多行,这与传统的聚合函数(如SUM, AVG等)...
在Oracle数据库中,有三个非常重要的字符串处理函数:INSTR、NVL和SUBSTR。这些函数在处理文本数据时起到至关重要的作用。 1. **INSTR函数**: INSTR函数用于在一个字符串中查找另一个子字符串的位置。其基本语法...
在mysql中使用内部函数instr,可代替传统的like方式查询,并且速度更快。 instr 函数,第一个参数是字段,第二个参数是要查询的串,返回串的位置,第一个是1,如果没找到就是0. 例如,查询字段name中带”军”的...
VB还提供了一系列内置函数,如`Sqr`(平方根)、`Len`(长度)、`InStr`(查找子字符串)等,这些函数可以直接使用,无需自定义。 总结起来,VB中的函数是代码组织的重要工具,它们提高了代码的复用性和可读性。...
此外,`INSTR`的一个特殊用法是,可以同时检查多个值是否存在,例如`instr('101914, 104703', id) > 0`,这等同于`id = 101914 OR id = 104703`,在处理多个条件时非常方便。 为了提高查询效率,可以考虑在字段上...