oracle instr的用法有哪些

995
2023/9/10 9:56:49
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

Oracle的INSTR函数用于在一个字符串中查找子字符串的位置。以下是INSTR函数的一些常见用法:

  1. 查找子字符串的位置:

INSTR(str, sub_str)

例如:SELECT INSTR(‘hello world’, ‘world’) FROM dual;

结果为6,表示子字符串’world’在字符串’hello world’中的起始位置为6。

  1. 从指定位置开始查找子字符串的位置:

INSTR(str, sub_str, start_pos)

例如:SELECT INSTR(‘hello world’, ‘o’, 5) FROM dual;

结果为8,表示在字符串’hello world’中,从位置5开始查找,第一个子字符串’o’的起始位置为8。

  1. 从指定位置开始查找子字符串的位置,指定出现的次数:

INSTR(str, sub_str, start_pos, occurrence)

例如:SELECT INSTR(‘hello world’, ‘o’, 1, 2) FROM dual;

结果为8,表示在字符串’hello world’中,从位置1开始查找,第2次出现子字符串’o’的起始位置为8。

  1. 反向查找子字符串的位置:

INSTR(str, sub_str, -start_pos)

例如:SELECT INSTR(‘hello world’, ‘o’, -5) FROM dual;

结果为8,表示在字符串’hello world’中,从倒数第5个位置开始往前查找,第一个子字符串’o’的起始位置为8。

需要注意的是,INSTR函数返回的位置是从1开始计数的。如果找不到子字符串,则返回0。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: 三元表达式与decode函数的区别