GBase 8a
其他
文章

STRING_TO_ARRAY 函数

发表于2025-12-29 13:40:0423次浏览2个评论

STRING_TO_ARRAY   函数用于将字符串按照指定的分隔符拆分成数组元素。
语法
STRING_TO_ARRAY(text1, text2[, text3])
参数说明
  text1  :待分割的字符串。如果为空字符串   ''  ,则返回   ''  。
  text2  :分隔符。
如果为空字符串   ''  ,则将整个待分割字符串作为一个元素返回。
如果为   NULL  ,则将待分割字符串中的每个字符作为一个元素。
  text3  :可选参数,用于指定将匹配的空字符串替换为的字符串。如果数组元素与该参数匹配,则替换为   NULL  。
使用示例
基本用法,使用分隔符拆分字符串:
gbase> SELECT STRING_TO_ARRAY('xx~^~yy~^~zz','~^~');
+---------------------------------------+
| string_to_array('xx~^~yy~^~zz','~^~') |
+---------------------------------------+
| {xx,yy,zz}                            |
+---------------------------------------+

使用可选的   text3   参数替换空字符串:
gbase> SELECT STRING_TO_ARRAY('xx~^~yy~^~zz','~^~','aa');
+--------------------------------------------+
| string_to_array('xx~^~yy~^~zz','~^~','aa') |
+--------------------------------------------+
| {xxaayyaazz}                               |
+--------------------------------------------+

当分隔符为空字符串时:
gbase> SELECT STRING_TO_ARRAY('xx~^~yy~^~zz','','aa');
+-----------------------------------------+
| string_to_array('xx~^~yy~^~zz','','aa') |
+-----------------------------------------+
| {xx~^~yy~^~zz}                          |
+-----------------------------------------+

注意事项
如果输入参数   array   为   NULL   会报类型不匹配错误;如果输入参数   array   为   ARRAY[NULL]   则返回空串。
如果输入参数   delimiter   为   NULL   则返回   NULL  。
如果输入参数   null_value   为   NULL   则不对数组中的   NULL   值进行替换。

评论

登录后才可以发表评论
用户头像
levvel发表于 3个月前
赞积分,赞积分
曾云林发表于 2个月前
谢谢分享