欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

oracle中substr函数以及字符串长度函数使用 oraclesubstrlength()字符串处理 

程序员文章站 2024-01-17 14:28:46
...
1、substr(string string, int a, int b)
参数1:string 要处理的字符串
参数2:a 截取字符串的开始位置(起始位置是0)
参数3:b 截取的字符串的长度(而不是字符串的结束位置)
例如:
substr("ABCDEFG", 0, 3); //返回:ABC,截取从A开始3个字符
substr("ABCDEFG", 0, 100); //返回:ABCDEFG,100虽然超出预处理的字符串最长度,但不会影响返回结果,系统按预处理字符串最大数量返回。
substr("ABCDEFG", -3, 3); //返回:EFG,注意参数-3,为负值时表示从尾部开始算起,字符串排列位置不变。

2、substr(string string, int a)

参数1:string 要处理的字符串
参数2:a 可以理解为从索引a(注意:起始索引是0)处开始截取字符串,也可以理解为从第 (a+1)个字符开始截取字符串。
例如:
substr("ABCDEFG", 0); //返回:ABCDEFG, 截取所有字符
substr("ABCDEFG", 2); //返回:BCDEFG,截取A之后所有字符

3.length()和lengthb();
lengthb(string)计算string所占的字节长度 :返回字符串的长度,单位是字节;
length(string)计算string所占的字符长度 :返回字符串的长度,单位是字符;

用法举例:
1.可以用length(‘string’)=lengthb(‘string’)判断字符串是否含有中文;
2.select length('我') from dual   --返回1
  select lengthb('我') from dual  --返回2
  select length('AB') from dual   --返回2
  select lengthb('AB') from dual  --返回2