Oracle 中 substr 和 instr 函数简单用法

Oracle 的 substr 和 instr 函数简单用法
substr 函数简单用法
substr 介绍
/*
* 截取字符串(字符串位置从 1 开始,而不是从 0 开始)
* @param string 源字符串
* @param position 检索位置,参数为正时,从左向右检索,参数为负时,从右向左检索
* @param substring_length 要截取的长度,可省略(默认从 position 位开始截取全部), 值小于 1 时返回空字符串
* @return 返回截取的字符串
*/
substr(string, position, substring_length);
测试代码
1 | select substr('Hello World', 0, 1) c1-- 返回结果为 'H' * 从字符串第一个字符开始截取长度为 1 的字符串 |
测试图片
instr 函数的简单用法
instr 函数介绍:
/*
* 返回子字符串在源字符串中的位置(字符串位置从 1 开始,而不是从 0 开始)
* @param string 源字符串
* @param substring 子字符串
* @param position 检索位置,可省略(默认为 1), 参数为正时,从左向右检索,参数为负时,从右向左检索
* @param occurrence 检索子字符串出现的次数,可省略(默认为 1), 值只能为正整数,否则会报错
* @return 返回子字符串在源字符串中出现的位置(没找到返回 0)
*/
instr(string, substring, position, occurrence)
测试代码
1 | SELECT INSTR('hello world', 'l') FROM DUAL; -- 结果:3 |
测试图片
总结
- 可以将 SUBSTR 和 INSTR 结合使用来实现截取字符串中特定字符前后的字符串
1 | -- 截取“hello,world”字符串中“,”分隔符之前的字符串 |