阅读量:0
Oracle的substr函数用于从一个字符串中提取子字符串
- 提取固定长度的子字符串:
SELECT SUBSTR('Hello, World!', 1, 5) AS substring FROM DUAL;
这将返回’Hello’,因为我们从位置1开始提取5个字符。
- 提取以某个字符开始的子字符串:
SELECT SUBSTR('Hello, World!', INSTR('Hello, World!', 'W')) AS substring FROM DUAL;
这将返回’World!',因为我们从字符’W’的位置开始提取子字符串。
- 提取两个字符之间的子字符串:
SELECT SUBSTR('Hello, World!', INSTR('Hello, World!', 'l'), INSTR('Hello, World!', 'o') - INSTR('Hello, World!', 'l')) AS substring FROM DUAL;
这将返回’llo,',因为我们从字符’l’的位置开始提取,直到字符’o’的位置。
- 提取最后一个字符:
SELECT SUBSTR('Hello, World!', LENGTH('Hello, World!')) AS last_char FROM DUAL;
这将返回’!',因为我们从字符串的最后一个字符开始提取。
- 使用负索引提取子字符串:
SELECT SUBSTR('Hello, World!', -6) AS substring FROM DUAL;
这将返回’World!',因为我们从倒数第6个字符开始提取子字符串。
通过这些示例,您可以了解如何在Oracle中巧妙地运用substr函数来处理字符串。根据实际需求,可以灵活调整参数和函数组合来实现所需功能。