全部产品
Search
文档中心

云原生大数据计算服务 MaxCompute:FIND_IN_SET

更新时间:Jun 15, 2023

查找字符串str1在以逗号(,)分隔的字符串str2中的位置,从1开始计数。

命令格式

bigint find_in_set(string <str1>, string <str2>)

参数说明

  • str1:必填。STRING类型。待查找的字符串。

  • str2:必填。STRING类型。以逗号(,)分隔的字符串。

返回值说明

返回BIGINT类型。返回规则如下:

  • str2中无法匹配到str1str1中包含逗号(,)时,返回0。

  • str1str2值为NULL时,返回NULL。

使用示例

  • 示例1:查找字符串ab在字符串abc,hello,ab,c中的位置。命令示例如下。

    --返回3。
    select find_in_set('ab', 'abc,hello,ab,c');
  • 示例2:查找字符串hi在字符串abc,hello,ab,c中的位置。命令示例如下。

    --返回0。
    select find_in_set('hi', 'abc,hello,ab,c');
  • 示例3:任一输入参数为NULL。命令示例如下。

    --返回NULL。
    select find_in_set(null, 'abc,hello,ab,c');

相关函数

FIND_IN_SET函数属于字符串函数,更多查找字符串、转换字符串格式的相关函数请参见字符串函数