Oracle数据库截取字符串 Oracle数据库提供了多种截取字符串的方法,本文将介绍 substr 和 instr 两个常用函数,以及 case when then else end 语句的使用。 一、substr 函数 substr 函数用于截取字符串的一部分,语法为 `substr(string, start_position, [length])`。其中,`string` 是要截取的原始字符串,`start_position` 是截取的开始位置(从 0 开始),`length` 是可选的,表示要截取的字符个数。 例如: * `substr("ABCDEFG", 0)` 返回:ABCDEFG,截取所有字符 * `substr("ABCDEFG", 2)` 返回:CDEFG,截取从 C 开始之后所有字符 * `substr("ABCDEFG", 0, 3)` 返回:ABC,截取从 A 开始 3 个字符 * `substr("ABCDEFG", 0, 100)` 返回:ABCDEFG,100 虽然超出预处理的字符串最长度,但不会影响返回结果,系统按预处理字符串最大数量返回。 * `substr("ABCDEFG", 0, -3)` 返回:EFG,注意参数-3,为负值时表示从尾部开始算起,字符串排列位置不变。 二、instr 函数 instr 函数用于查找字符串中的子字符串,语法为 `instr(string, subString, position, occurrence)`。其中,`string` 是源字符串,`subString` 是要查找的子字符串,`position` 是查找的开始位置,`occurrence` 是源字符串中第几次出现的子字符串。 例如: * `INSTR('CORPORATE FLOOR', 'OR', 3, 2)` 中,源字符串为'CORPORATE FLOOR', 目标字符串为'OR', 起始位置为 3,取第2 个匹配项的位置;返回结果为 14 三、case when then else end 语句 case when then else end 语句用于根据条件执行不同的操作,语法为 `CASE WHEN condition THEN result [WHEN condition THEN result ...] ELSE result END`。其中,`condition` 是条件表达式,`result` 是执行的结果。 例如: * `SELECT CASE R.REQ_STATUS WHEN 'New' THEN '新增' WHEN 'Callbacking' THEN '回复' ELSE '测试' END AS TEST FROM TB_SUPPORT_REQ R` 这相当于 Java 中的 `if {...} else if {...} else {...}` 语句。
- 粉丝: 0
- 资源: 5
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助