Detta är lätt att göra med REGEXP_SUBSTR()
fungera. Läs mer
.
Den här frågan identifierar den första, andra och tredje förekomsten av alfabetiska tecken. Förutsatt att det finns en avgränsare spelar det ingen roll vad det är.
SQL> select col1
2 , regexp_substr(col1, '[[:alpha:]]+') first_name
3 , regexp_substr(col1, '[[:alpha:]]+', 1, 2) middle_name
4 , regexp_substr(col1, '[[:alpha:]]+', 1, 3) last_name
5 from t34;
COL1 FIRST_NAME MIDDLE_NAM LAST_NAME
------------------------------ ---------- ---------- ----------
Jack,Jon Man Jack Jon Man
SQL>