• MaxCompute字符串分割函数-SPLIT_PART


    语法格式

    string split_part(string <str>, string <separator>, bigint <start>[, bigint <end>])
    
    • 1

    函数说明

    依照分隔符separator拆分字符串str,返回从start部分到end部分的子串(闭区间)。

    参数说明

    • str:必填。STRING类型。待拆分的字符串。如果是BIGINT、DOUBLE、DECIMAL或DATETIME类型,则会隐式转换为STRING类型后参与运算。
    • separator:必填。STRING类型常量。拆分用的分隔符,可以是一个字符,也可以是一个字符串。
    • start:必填。BIGINT类型常量,必须大于0。表示返回段的开始编号(从1开始)。
    • end:BIGINT类型常量,大于等于start。表示返回段的截止编号,可省略,缺省时表示和start取值相等,返回start指定的段。

    返回值说明

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

    • 如果start的值大于切分后实际的分段数,例如字符串拆分完有6个片段,start大于6,返回空串。
    • 如果separator不存在于str中,且start指定为1,返回整个str。如果str为空串,则输出空串。
    • 如果separator为空串,则返回原字符串str
    • 如果end大于片段个数,返回从start开始的子串。
    • str非STRING、BIGINT、DOUBLE、DECIMAL或DATETIME类型时,返回报错。
    • separator非STRING类型常量时,返回报错。
    • startend非BIGINT类型常量时,返回报错。
    • separator外,如果任一参数值为NULL,返回NULL。

    使用示例

    示例1:依照分隔符,拆分字符串a,b,c,d,返回指定部分的子串。命令示例如下。

    --返回a。
    select split_part('a,b,c,d', ',', 1);
    --返回a,b。
    select split_part('a,b,c,d', ',', 1, 2);
    
    • 1
    • 2
    • 3
    • 4

    示例2:start的值大于切分后实际的分段数。命令示例如下。

    --返回空串。
    select split_part('a,b,c,d', ',', 10);
    
    • 1
    • 2

    示例3:separator不存在于str中。命令示例如下。

    --返回a,b,c,d。
    select split_part('a,b,c,d', ':', 1);
    --返回空串。
    select split_part('a,b,c,d', ':', 2);
    
    • 1
    • 2
    • 3
    • 4

    示例4:separator为空串。命令示例如下。

    --返回a,b,c,d。
    select split_part('a,b,c,d', '', 1);
    
    • 1
    • 2

    示例5:end的值大于切分后实际的分段数。命令示例如下。

    --返回b,c,d。
    select split_part('a,b,c,d', ',', 2, 6);
    
    • 1
    • 2

    示例6:除separator外,任一输入参数为NULL。命令示例如下。

    --返回NULL。
    select split_part('a,b,c,d', ',', null);
    
    • 1
    • 2
  • 相关阅读:
    PostgreSQL插件的安装使用与删除
    达人评测 i7 12800hx和i9 12900h选哪个好
    腾讯云16核CPU服务器配置大全,CVM和轻量服务器
    SpringMVC:整合SSM框架
    有关神经网络的训练算法,深度神经网络训练方法
    Python模块
    【电力系统】CJAYA算法优化光伏模型SDM参数附matlab代码
    在Vue中使用腾讯云COS(建议正式环境使用)
    【Qt+FFMPEG】- FFMPEG转码详细流程
    Python数据分析与机器学习44-Python生成时间序列
  • 原文地址:https://blog.csdn.net/shenglishuguang/article/details/125563768