regexp_split_to_table、regexp_split_to_array这两个函数都是用来将字符串转换成格式化数据,一个是转换成结果集,一个是转换成数组。
regexp_split_to_table和regexp_split_to_array都是字符串分隔函数,可通过指定的表达式进行分隔。区别是regexp_split_to_table将分割出的数据转成行,regexp_split_to_array是将分隔的数据转成数组。
select regexp_split_to_table('a,b,c',',');
select regexp_split_to_table('/home/work/pg.sh','\/');
select regexp_split_to_table(coalesce('/home/work/pg.sh',''),E'\/');

select regexp_split_to_array('a,b,c',',');
select regexp_split_to_array('/home/work/pg.sh','\/');
select regexp_split_to_array(coalesce('/home/work/pg.sh',''),E'\/');

本文介绍了PostgreSQL中用于字符串处理的两个重要函数:regexp_split_to_table和regexp_split_to_array。这两个函数都能根据正则表达式拆分字符串,但返回形式不同。regexp_split_to_table将结果转化为表格形式,方便在SQL查询中使用;而regexp_split_to_array则将结果转化为数组,适用于需要数组操作的场景。通过示例展示了如何使用这两个函数处理路径和逗号分隔的字符串。
1641

被折叠的 条评论
为什么被折叠?



