Saturday, 5 January 2013

Dividing pipe delimited string into columns

Example :-

     String   -   CI-CT-WESTPORT-06880.02
Column1   -   CI
Column2   -   CT
Column3   -   WESTPORT
Column4   -    06880.02


Solution :-

 SELECT REGEXP_SUBSTR('CI-CT-WESTPORT-06880.02', '[^-]+', 1, 1) COLUMN1,
                REGEXP_SUBSTR('CI-CT-WESTPORT-06880.02', '[^-]+', 1, 2) COLUMN2,
                REGEXP_SUBSTR('CI-CT-WESTPORT-06880.02', '[^-]+', 1, 3) COLUMN3,
                REGEXP_SUBSTR('CI-CT-WESTPORT-06880.02', '[^-]+', 1, 4) COLUMN4
    FROM DUAL;


You can use regexp_substr only for (10g +).

No comments:

Post a Comment