oracle用REGEXP_SUBSTR 一行转多行

将用,或 | 或 = 分割的数字串,转成多行
ORACLE -e '
SELECT * FROM (
  SELECT
      product,
      handler,
      REGEXP_SUBSTR (prizechain, '[0-9]+', 1, lv) bonusid 
  FROM
      ods.missionkpi_config t,
      (SELECT LEVEL lv FROM dual CONNECT BY LEVEL < 30) b
  WHERE
      b.lv <= REGEXP_COUNT (t.prizechain, '[,\|=]') + 1 
      and t.prizechain is not null 
)a WHERE bonusid<>0 ORDER BY product,handler;'

猜你喜欢

转载自www.cnblogs.com/learnwithhannah/p/9228980.html