oracle sql 逗号分割

1.REGEXP_SUBSTR函数.

这个函数的作用是正则分隔字符串,用法为

function REGEXP_SUBSTR(string, pattern, position, occurrence, modifier)

参数说明:
参数1:string-待分割字符串;
参数2:pattern-正则表达式;
参数3:position-起始位置,从第几个字符开始正则表达式匹配(默认为1);
参数4:occurrence-标识第几个匹配组,默认为1;

参数5:modifier-模式('i'不区分大小写进行检索,'c'区分大小写进行检索,默认为'c'.);

1.分割字符串中所有的逗号,然后成多行.

sql code:

select regexp_substr(q.nums, '[^,]+', 1, rownum,'i'), names
from (select '1,2,3' nums, '张三' names from dual) q
connect by rownum <= LENGTH(q.nums) - LENGTH(REGEXP_REPLACE(q.nums, ',', '')) + 1;

sql 查询结果截图如下:

猜你喜欢

转载自www.cnblogs.com/wk814007042/p/11716375.html