Obawiam się, że Twoja zaakceptowana odpowiedź nie obsługuje przypadku, w którym potrzebujesz wartości po pozycji null (spróbuj uzyskać 6. pole):
SQL> select REGEXP_SUBSTR ('2035197553,2,S,14-JUN-14,,P', '[^,]*', 1, 6) phn_end
_dt
2 from dual;
P
-
Musisz to zrobić zamiast tego, jak sądzę (działa na 11g):
SQL> select REGEXP_SUBSTR ('2035197553,2,S,14-JUN-14,,P', '([^,]*)(,|$)', 1, 6,
NULL, 1) phn_end_dt
2 from dual;
P
-
P
Właśnie to odkryłem po opublikowaniu własnego pytania:REGEX, aby wybrać n-tą wartość z listy, pozwalając na nulls