1、substr(string string, int a, int b)
参数1:string 要处理的字符串
参数2:a 截取字符串的开始位置(ORACLE中索引位置是从1开始,不同于java)
参数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(注意:ORACLE中索引位置是从1开始,不同于java)处开始截取字符串,包含a处。
参数1:string 要处理的字符串
参数2:a 截取字符串的开始位置(ORACLE中索引位置是从1开始,不同于java)
参数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(注意:ORACLE中索引位置是从1开始,不同于java)处开始截取字符串,包含a处。
例如:
select substr('ABCDEFG', 0) from dual //返回:ABCDEFG,截取所有字符,参数b为1时 与前面的结果一样。
substr('ABCDEFG', 2); //返回:BCDEFG,截取从B开始之后所有字符