Oracle中INSTR函数,及在DB2、Sybase中与Instr函数功能相同的函数
一、Oracle中INSTR函数
INSTR (源字符串, 目标字符串, 起始位置, 匹配序号)
在Oracle/PLSQL中,instr函数返回要截取的字符串在源字符串中的位置。只检索一次,就是说从字符的开始到字符的结尾就结束。
语法如下:
instr( string1, string2 [, start_position [, nth_appearance ] ] )
参数分析: string1 源字符串,要在此字符串中查找。
string2 要在string1中查找的字符串.
start_position 代表string1 的哪个位置开始查找。此参数可选,如果省略默认为1. 字符串索引从1开始。如果此参数为正,从左到右开始检索,如果此参数为负,从右到左检索,返回要查找的字符串在源字符串中的开始索引。
nth_appearance 代表要查找第几次出现的string2. 此参数可选,如果省略,默认为 1.如果为负数系统会报错。
注意: 如果String2在String1中没有找到,instr函数返回0.
示例: SELECT instr('syranmo','s') FROM dual; -- 返回 1
SELECT instr('syranmo','ra') FROM dual; -- 返回 3
SELECT instr('syran mo','a',1,2) FROM dual; -- 返回 0
(根据条件,由于a只出现一次,第四个参数2,就是说第2次出现a的位置,显然第2次是没有再出现了,所以结果返回0。注意空格也算一个字符!)
SELECT instr('syranmo','an',-1,1) FROM dual; -- 返回 4
(就算是由右到左数,索引的位置还是要看‘an’的左边第一个字母的位置,所以这里返回4)
SELECT instr('abc','d') FROM dual; -- 返回 0
注:也可利用此函数来检查String1中是否包含String2,如果返回0表示不包含,否则表示包含。
二、DB2中,功能相同的函数:
(1) LOCATE函数:
语法:LOCATE(ARG1,ARG2,<POS>)
解释:LOCATE函数在ARG2中查找ARG1第一次出现的位置,如果指定POS,则从ARG2的POS处开始查找ARG1第一次出现的位置。
(2) POSSTR函数:
语法:POSSTR(EXP1,EXP2)
解释:POSSTR函数返回EXP2在EXP1中的位置。
三、Sybase IQ中,功能相同的函数:
(1) CHARINDEX函数:
CHARINDEX(char_expr,expression)
返回指定char_expr在expression中的开始位置,否则为0
转载于:https://www.cnblogs.com/alexzp/p/3540136.html
Oracle中INSTR函数,及在DB2、Sybase中与Instr函数功能相同的函数相关推荐
- python练习——实现质数检测,编写isprime()函数,参数为整数,并且需要有异常处理功能。
编写isprime()函数,参数为整数,并且需要有异常处理功能.此函数的功能是检测接收的整数是否为质数,如果整数是质数,则返回True,否则返回False. # 编写isprime()函数,参数为整数 ...
- Oracle 10g数据库基础之基本查询语句-中-函数
Oracle 10g数据库基础之基本查询语句-中-函数 --资料参考:张烈 张建中<数据库管理员培训讲义> 函数: 使用函数的目的是为了操作数据 将输入的变量处理,返回一个结果. 变量可以 ...
- MySQL里和trunc函数相同的_mysql 函数中与Oracle中ltrim函数功能相同的函数是什么函数?...
一.ANSI字符函数 字符函数用于在SQL里以不同于存储方式的格式来表示字符串. 串接就是把两个单独的字符串组合为一个. 子串的概念就是从字符串里提取一部分. TRANSLATE函数用于逐字符地把一个 ...
- oracle只查询0点数据,Oracle 10g数据库基础之基本查询语句-中-函数
Oracle 10g数据库基础之基本查询语句-中-函数 --资料参考:张烈 张建中<数据库管理员培训讲义> 函数: 使用函数的目的是为了操作数据 将输入的变量处理,返回一个结果. 变量可以 ...
- Mybatis selectKey获取自增ID(DB2/Sybase/MySQL/Oracle/达梦)
Mybatis selectKey获取自增ID(DB2/Sybase/MySQL/Oracle/达梦) 1.selectKey 2.不同数据库写法 2.1 DB2 2.2.Sybase 2.3 MyS ...
- bcp入库oracle,Sybase中的BCP用法实践 与 Oracle的SQLLDR用法实践
关于BCP的用法法,网上有很多资料,但要经过自已的实践来证实才能为已所用,因网上的东东有些是转来转去,会有遗误之处,所以对网上的相关资料要广泛地多多地参考,不能迷信某一家之言,因为IT相关的东东存于着 ...
- oracle日期转数值的函数,oracle数据库内置函数之数值函数、字符函数、日期函数、转换函数及其在查询语句中的运用...
数值函数: 1.四舍五入函数round() from dual:一行一列组成 select round(23.4) from dual;--默认不写m表示m为0 select round(23.45, ...
- oracle 表导出pdm文件,如何将数据库中已有表导入到powerDesigner生成pdm文件
1.create new PDM: 2.select database menu; 3.click Reverse Engineer database : 4.then choose your sc ...
- oracle取括号内数字,怎么把excel中一列文本中括号里的数字弄出来啊
公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解. 话题:怎么把excel中一列文本中括号里的数字弄出来啊回答:=MID(A1,FIND("(",A1)+1,FIND(")",A1)-FIN ...
- DB Query Analyzer中的事务管理在DB2中的应用
DB Query Analyzer中的事务管理在DB2中的应用 马根峰 ( 广东联合电子收费股份有限公司, 广州 510300) 摘要 事务控制是数据库应用系统中的关键技术之一,概述了事务控 ...
最新文章
- Avahi DOS攻击broadcast-avahi-dos
- 计算机一级试题论述,计算机一级考试理论题及答案要点
- java期末试题c卷,JAVA程序设计期末考试试卷及参考答案
- 定时执行vacuum
- C++socket编程(一):绪论
- Maven-依赖调解/查看项目依赖了哪些包
- IIS和Tomcat共用80端口的解决方案
- 树莓派 armv几_如何在具有armv6处理器的树莓派板上安装和使用Java 11和JavaFX 11
- 计算机蓝屏了 怎么维修,电脑蓝屏怎么办?电脑出现蓝屏快速解决教程
- 模式识别属于计算机科学吗,模式识别与智能系统这个学科属于什么类?
- python针对Excel表格的操作
- 计算机无法正常更新,无法完成更新正在撤销更改请不要关闭你的计算机的解决方法...
- Matlab图像的平移,旋转,缩放,裁剪
- 2015.3.30第一次博客测试
- MyBatis中的日志(LOG4J)
- 等边三角形的积木编程
- linux驱动系列学习之input子系统(二)
- wifi: 连接网络时提示“已连接无法访问互联网”几秒钟后消失
- MD5 c++ 实现
- IPPBX系统组成原理及其应用
热门文章
- 如何在 Mac 上查找和删除重复文件?
- 即刻起,加速您的前端构建
- 洛谷3389:【模板】高斯消元法——题解
- idea 添加 golang 项目的 gopath
- MyBatis-3.4.2-源码分析12:XML解析之mapperElement(root.evalNode(mappers))
- JavaScript 图像延迟加载库 Echo.js的简单使用
- junit学习笔记(二):hamcrest和TestSuit
- 简单设置让Win7不等更新直接关机
- SqlServer数据库正在还原的解决办法
- Git 不要只会 pull 和 push,试试这 5 条提高效率的命令