En ændring af fonetisk_mands svar, der vil tillade NULL-elementer i listen. Regex-formatet '[^,]+'
til parsing af afgrænsede lister håndterer ikke NULL-listeelementer og returnerer en forkert værdi, hvis der findes en, og derfor bør brugen af den undgås. Skift originalen ved at slette tallet 2 for eksempel og se resultaterne. Du får en '3' i 2. elements position! Her er en måde, der håndterer NULL og returnerer den korrekte værdi for elementet:
SELECT TRIM(REGEXP_SUBSTR(str, '(.*?)(,|$)', 1, LEVEL, NULL, 1)) str
FROM ( SELECT '1,,3,4' str FROM dual )
connect by level <= regexp_count(str, ',') + 1;
Se her for mere info og bevis:https://stackoverflow.com/a/31464699/2543416