oracle 根据分号分割为多个列

oracle 没有split 函数,因此没法直接使用,但是时间上会遇到需要分割的时候,可以使用正则表达式

SELECT
REGEXP_SUBSTR(administration, '[^;]+', 1, 1) AS SKILL1,
REGEXP_SUBSTR(administration, '[^;]+', 1, 2) AS SKILL2,
REGEXP_SUBSTR(administration, '[^;]+', 1, 3) AS SKILL3,
REGEXP_SUBSTR(administration, '[^;]+', 1, 4) AS SKILL4
FROM outpbill.outp_bill_items;

REGEXP_SUBSTR  函数的具体用法可以网上看 非常好用。

administration 表的一个列 ,我这里对应的值是

oracle 根据分号分割为多个列_第1张图片

执行sql之后 

oracle 根据分号分割为多个列_第2张图片

你可能感兴趣的:(oracle,数据库)