Oracle
 sql >> Database >  >> RDS >> Oracle

Oracle REGEX_SUBSTR Non rispetta i valori null

Temo che la tua risposta accettata non gestisca il caso in cui hai bisogno del valore dopo la posizione nulla (prova a ottenere il 6° campo):

SQL> select REGEXP_SUBSTR ('2035197553,2,S,14-JUN-14,,P', '[^,]*', 1, 6) phn_end
_dt
  2  from dual;

P
-

Devi farlo invece credo (funziona su 11g):

SQL> select REGEXP_SUBSTR ('2035197553,2,S,14-JUN-14,,P', '([^,]*)(,|$)', 1, 6,
NULL, 1) phn_end_dt
  2  from dual;

P
-
P

L'ho appena scoperto dopo aver postato la mia domanda:REGEX per selezionare l'ennesimo valore da un elenco, consentendo i valori null