首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >YashanDB INSTR函数

YashanDB INSTR函数

原创
作者头像
用户10349277
发布2025-06-06 18:05:32
发布2025-06-06 18:05:32
1080
举报
代码语言:javascript
复制
instr::= INSTR "(" expr "," sub_character ["," position ["," occurrence]] ")"

Copied!

INSTR函数根据子字符串、起始位置、出现次数在expr表示的字符串中查找,并返回第occurrence次出现的BIGINT类型的位置值,未查找到则返回0。

expr、sub_character

expr、sub_character均为通用表达式,两个参数的值须为字符型,或除JSON、LOB、XMLTYPE类型外可转化为字符型的其他类型。

  • 当expr的值为NULL时,函数返回NULL。
  • 当sub_character的值为NULL时,函数返回NULL。

position

开始查找的起始位置,是与expr相同的通用表达式,该值须为数值型数据,或可转换为NUMBER类型的其他类型数据。起始位置必须为整数,或可被转换为整数,取值范围[-9223372036854775808, 9223372036854775807]。正整数表示从前往后自起始位置开始查找,负整数表示从后向前自起始位置开始查找。

  • 当position的值为NULL时,函数返回NULL。
  • 当position的值为0时,函数不执行查找并返回0。
  • 当position的值为带有小数的NUMBER类型时,函数截断其小数位保留整数位。
  • 若position的值为浮点类型时,函数将其奇进偶舍至整数。
  • 不指定position时,默认起始位置为1。

occurence

指定按子字符串出现的第几次进行查找,,是与expr相同的通用表达式,该值须为数值型数据,或可转换为NUMBER类型的其他类型数据。occurence的值必须为正整数,或可被转换为正整数,取值范围[1,9223372036854775807]。

  • 当occurence的值为NULL时,函数返回NULL。
  • 当occurence的值为带有小数的NUMBER类型时,函数截断其小数位保留整数位。
  • 若occurence的值为浮点类型时,函数将其奇进偶舍至整数。
  • 不指定occurence时,默认为1。

示例

代码语言:javascript
复制
SELECT INSTR('This is a playlist', 'is') POS FROM DUAL;
                  POS
---------------------
                    3
 
SELECT INSTR('This is a playlist', 'is', 1, 2) POS FROM DUAL;
                  POS
---------------------
                    6
 
SELECT INSTR('This is a playlist', 'is', 1, 3) POS FROM DUAL;
                  POS
---------------------
                   16
 
SELECT INSTR('This is a playlist', 'is', -2, 3) POS FROM DUAL;
                  POS
---------------------
                    3
 
SELECT INSTR('This is a playlist', 'is', 5, 3) POS FROM DUAL;
                  POS
---------------------
                    0

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档