IvaSteel,
жди ещё версий, я накидал такую(регулярки тут конечно можно сказать неиспользуются):
with tt as(
select '' as aaa from dual union all
select '1234' as aaa from dual union all
select '1234,12345,' as aaa from dual union all
select '1234,12345,12346' as aaa from dual union all
select '1234,12345,12346,12347' as aaa from dual union all
select '1234,12345,12346,12347,12348,' as aaa from dual union all
select '1234,12345,12346,12347,12348,12349,12350,' as aaa from dual
)
select rtrim(case regexp_count(trim(',' from aaa), '[,]')
when 0 then ''
when 1 then substr(aaa, instr(aaa, ',')+1)
else substr(aaa, instr(aaa, ',')+1, decode(instr(aaa, ',',1,4),0,length(aaa),instr(aaa, ',',1,4)))
end, ',') as val
from tt;