SUBSTR
和 INSTR
是 Oracle 数据库中两个不同的字符串函数,它们的用途和功能有所不同
SUBSTR
函数:
SUBSTR
函数用于从一个字符串中提取子字符串。它接受三个参数:原始字符串、起始位置和子字符串的长度。SUBSTR
函数从指定的起始位置开始,提取指定长度的子字符串。语法:
SUBSTR(string, start_position, length)
示例:
SELECT SUBSTR('Hello, World!', 1, 5) FROM DUAL; -- 结果为 'Hello'
INSTR
函数:
INSTR
函数用于在一个字符串中查找另一个子字符串的位置。它接受四个参数:原始字符串、要查找的子字符串、起始位置(可选)和第 N 次出现的子字符串(可选)。INSTR
函数返回子字符串在原始字符串中首次出现的位置。如果未找到子字符串,则返回 0。语法:
INSTR(string, substring, start_position, occurrence)
示例:
SELECT INSTR('Hello, World!', 'World') FROM DUAL; -- 结果为 8
总结:
SUBSTR
函数用于提取子字符串,而 INSTR
函数用于查找子字符串在原始字符串中的位置。SUBSTR
函数需要指定起始位置和子字符串的长度,而 INSTR
函数需要指定要查找的子字符串、起始位置(可选)和第 N 次出现的子字符串(可选)。