oracle中如何判断包含两个字符串-Oracle
Oracle 中如何判断包含两个字符串
在 Oracle 数据库中,可以使用 INSTR 函数来判断一个字符串是否包含另一个字符串。INSTR 函数返回第一个字符串中第一个匹配子字符串的位置。如果子字符串不在第一个字符串中,则返回 0。
语法:
INSTR(string1, string2)
登录后复制
参数:
- string1:要搜索的字符串
- string2:要查找的子字符串
示例:
判断字符串 "Hello, world!" 是否包含子字符串 "world":
SELECT INSTR('Hello, world!', 'world') FROM dual;
登录后复制
结果:
7
登录后复制
这表示子字符串 "world" 从字符串 "Hello, world!" 的第 7 个字符开始。
判断两个字符串是否都包含在另一个字符串中:
要判断两个字符串是否都包含在另一个字符串中,可以使用嵌套的 INSTR 函数:
SELECT CASE WHEN INSTR(string1, string2a) > 0 AND INSTR(string1, string2b) > 0 THEN '包含' ELSE '不包含' END FROM dual;
登录后复制
参数:
- string1:要搜索的字符串
- string2a:要查找的第一个子字符串
- string2b:要查找的第二个子字符串
示例:
判断字符串 "The quick brown fox jumps over the lazy dog" 是否包含子字符串 "quick" 和 "lazy":
SELECT CASE WHEN INSTR('The quick brown fox jumps over the lazy dog', 'quick') > 0 AND INSTR('The quick brown fox jumps over the lazy dog', 'lazy') > 0 THEN '包含' ELSE '不包含' END FROM dual;
登录后复制
结果:
包含
登录后复制