oracle 字符串转多行

SELECT SUBSTR(FIELD1,
              INSTR(FIELD1, '|', 1, ROWNUM) + 1,

              INSTR(FIELD1, '|', 1, ROWNUM + 1) -

              INSTR(FIELD1, '|', 1, ROWNUM) - 1) AS FIELD2

  FROM (SELECT '|' || 'a|bbb|cccc|ddddd|ee|d|a' || '|' AS FIELD1 FROM DUAL)

CONNECT BY INSTR(FIELD1, '|', 2, ROWNUM) > 0;

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