with t as (select '1,2,3,10,11,12' a from dual) select substr(a, decode(level - 1, 0, 0, instr(a, ',', 1, level - 1)) + 1, (decode(level, regexp_count(a, ',') + 1, length(a) + 1, instr(a, ',', 1, level))) - (decode(level - 1, 0, 0, instr(a, ',', 1, l…