PostgreSQL string_to_array() 函数使用指南
PostgreSQL string_to_array() 函数将一个指定的字符串按照指定的分隔符拆分成数组并返回。
此函数和 regexp_split_to_array() 函数类似。
string_to_array() 语法
这里是 PostgreSQL string_to_array() 函数的语法:
string_to_array(string text, delimiter text) -> text[]
或者
string_to_array(string text, delimiter text, null_string text) -> text[]
参数
- string
- 必需的。 一个要拆分的字符串。
- delimiter
- 必需的。 分隔符。
- null_string
- 可选的。 一个字符串。拆分后的数组中与它匹配的元素将被替换为 NULL。
返回值
PostgreSQL string_to_array() 函数返回一个数组,该数组中的元素就是字符串 string 按照分隔符 delimiter 拆分的所有部分。
如果 delimiter 为 NULL,字符串中的所有字符都将成为结果数组中的成员。
如果 delimiter 是一个空字符串,那么整个字符串将成为结果数组的唯一成员。
如果 null_string 不为 NULL,那么拆分后的数组中的与它匹配的成员将被替换为 NULL。
string_to_array() 示例
这个示例演示了如何使用 string_to_array() 函数将一个字符串根据分隔符拆分成数组:
SELECT string_to_array('ab,cd,ef,gh', ',');
 string_to_array
-----------------
 {ab,cd,ef,gh}如果 delimiter 为 NULL,字符串中的所有字符都将成为结果数组中的成员。
SELECT string_to_array('ab,cd,ef,gh', NULL);
        string_to_array
-------------------------------
 {a,b,",",c,d,",",e,f,",",g,h}这里,由于 delimiter 为 NULL,结果数组的成员是字符串中的所有字符。
如果 delimiter 是一个空字符串,那么整个字符串将成为结果数组的唯一成员。
SELECT string_to_array('ab,cd,ef,gh', '');
 string_to_array
-----------------
 {"ab,cd,ef,gh"}如果 null_string 不为 NULL,那么拆分后的数组中的与它匹配的成员将被替换为 NULL。
SELECT string_to_array('ab,cd,ef,gh', ',', 'cd');
 string_to_array
-----------------
 {ab,NULL,ef,gh}