格式2:substr(string string, int a) ;
格式1:
1、string 需要截取的字符串
2、a 截取字符串的开始位置(注:当a等于0或1时,都是从第一位开始截取)
3、b 要截取的字符串的长度
格式2:
1、string 需要截取的字符串
2、a 可以理解为从第a个字符开始截取后面所有的字符串。
2、instr()
函数格式:
instr( string1, string2 , start_position , nth_appearance )
instr(源字符串, 目标字符串, 起始位置,第 n 次匹配)
找到 info 字段中 两个 | 之间的内容,--找 info字段中 '|'的位置,从第一个位置开始找,找其出现的第一次的位置, + 1表示取 | 之后的内容,-1表示取|之前的内容
SUBSTR(info, INSTR(info, '|', 1, 1)+1, INSTR(info, '|', 1, 2)-INSTR(info, '|', 1, 1)-1)
-- 找 info字段中 '|'的位置,从第一个位置开始找,找其出现的第一次的位置, + 1表示取 | 之后的内容,-1表示取|之前的内容
-- 第二次出现的位置 减去 第一次出现的位置 减去 1 即是要截取的长度,也就是 substr() 函数最后一个参数的意义
以上,问题解决~
2020年最后一天,特地记录一份
ORACLE
SQL的
字符
串
截取
函数,感觉很好用,用来替换原来代码里直接用
SUBSTR
()函数内部写死的子
字符
串index,写死的子
字符
串index号,当该栏位更改后,很不便于维护:
举个栗子:
某个表的栏位名称叫:CODE_EXT,
内容
为CT1-M-P,则我要
截取
两个
‘-’中间的M,则SQL的函数可以写成:
SUBSTR
(CODE_EXT,
instr
(CODE_EXT,’-’,1,1)+1,
instr
(CODE_EXT,’-’,1,2) -
instr
(CODE_EXT,’-
3.长度:中间位置长度不确定,所以查找第二个分隔符位置减去开始位置得。组合使用可以
截取
两个
字符
中间的
字符
串,下面例子从
字符
串。length:
截取
长度(默认
截取
到末尾)。:查找的子
字符
串(可以是单个
字符
)。1.先使用
SUBSTR
函数写出模板。
INSTR
()函数:查找
字符
串。
INSTR
()函数:查找
字符
串。表示从倒数第三个
字符
开始,表示从倒数第三个
字符
开始,使用语法:
SUBSTR
(which:查找第几个。使用语法:
INSTR
(:需要
截取
的
字符
串。
select
substr
('123-asdf-119',
instr
('123-asdf-119','-')+1,
instr
('123-asdf-119','-',
instr
('123-asdf-119','-')+1)-
instr
('123-asdf-119','-')-1) from dual...
https://blog.csdn.net/chinasxdtzhaoxinguo/article/details/84663351
Oracle
中通过
substr
和
instr
实现
截取
指定
字符
之间
的
字符
串
test表name字段 是
字符
串,型如 CA-CA1344-A-11OCT141250-D
需求一:按照-分隔,去第二段
select
substr
(name,
instr
(name,'-',1,...
create or replace function func_
substr
_for_2str(p_str in varchar2,p_first_str in varchar2,p_next_str in varchar2) return varchar2 as
idx int;
idx2 int;
ret_str varchar2(4000);
begin
idx :=
instr
...
摘要:在开发项目的过程中遇到了这样的一个问题,就是从远程服务器取到的数据中是由一段规则的
字符
串组成的,但是你想要的还不是这段
字符
串,是其中的一段
字符
串,那就的使用
Oracle
强大的函数了,我的问题是这样的,我要把如下所示红框内的那段
字符
串
截取
出来,就是说
截取
第一个"-"和第二个“-”
之间
的
字符
串出来:
一:如图所示:
学习Excel技术,关注微信公众号:excelperfect本文继续学习wellsr.com中提供VBA程序。经常研究优秀的VBA程序代码,理解其中的编程方法和技巧,往往能够取得事半功倍的效果。下面的用户自定义函数SuperMid函数能够在一段文本中提取
两个
字符
、分隔符、单词等
之间
的子文本(
字符
串)。其中,分隔符可以相同,也可以不同。SuperMid函数的代码如下:'提取
字符
串中在
两个
子...