oracle如何截取符号,oracle截取某个字符后的字符

oracle中截取一个字符串中的数字怎么做?

如果Oracle版本不是太低的话,使用 正则表达式函数 REGEXP_SUBSTR 处理。

创新互联-专业网站定制、快速模板网站建设、高性价比富民网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式富民网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖富民地区。费用合理售后完善,10余年实体公司更值得信赖。

5个参数

第一个是输入的字符串

第二个是正则表达式

第三个是标识从第几个字符开始正则表达式匹配。(默认为1)

第四个是标识第几个匹配组。(默认为1)

第五个是是取值范围:

i:大小写不敏感;

c:大小写敏感;

n:点号 . 不匹配换行符号;

m:多行模式;

x:扩展模式,忽略正则表达式中的空白字符。

SQL SELECT

2 REGEXP_SUBSTR(a,'[0-9]+')

3 FROM

4 test_reg_substr

5 WHERE

6 REGEXP_LIKE(a, '[0-9]+');

oracle 如何截取两个"-"之间的字符串

可以使用substr函数及instr函数共同实现:

如,字符串为:123-asdf-119

现在要截取两个“-”中间的字符串,可用如下语句:

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;

查询结果:

instr函数:

语法如下:

instr( string1, string2, start_position,nth_appearance )

substr函数:

substr(string,start,length)

string - 指定的要截取的字符串

start - 必需,规定在字符串的何处开始

正数 - 在字符串的指定位置开始

负数 - 在从字符串结尾的指定位置开始

0 - 在字符串中的第一个字符处开始

length - 可选,指定要截取的字符串长度,缺省时返回字符表达式的值结束前的全部字符。

oracle怎么截取指定字符后面的字符串,或者删除指定字符前面的字符串也行

用instr确定指定字符的位置,开始截取的位置就是这个位置+1,再用substr截取剩余字符。以你给的字符串为例:

SQL

select

substr('D:\AssetsManagement\resource\ehcache\test.txt',instr('D:\AssetsManagement\resource\ehcache\test.txt','\',-1,1)+1)

from

dual;

SUBSTR('D:\ASSETSMANAGEMENT\RE

------------------------------

test.txt

oracle中 sql截取某个字符前面和后面的值

1、将新建好的表aaaa,填充需要查询的数据以"_"或者","为分隔符的两条数据。

2、先挑ID为1的数据进行截取查询演示。

3、如果已知截取字符的长度和特殊字符位置,就可以用substring()函数来从字符串的开始位置,截取到特殊字符出现的位置。

4、使用charindex()函数来返回特殊字符出现的位置,查询结果及语句。

5、使用LEFT()函数和charindex()函数来从字符最左边开始到特殊字符出现的位置。

6、第一个参数表示被截取的字符串,第二个参数表示要在第一个参数中开始截取的位置,第三个参数表示要截取的长度。


文章名称:oracle如何截取符号,oracle截取某个字符后的字符
文章链接:http://pwwzsj.com/article/dseigho.html