Oracle
 sql >> Base de données >  >> RDS >> Oracle

Fractionner la chaîne dans Oracle avec regexp_substr dans l'ordre

Vous n'avez pas besoin d'un DISTINCT pour obtenir votre résultat ; de plus, pour obtenir le résultat dans un ordre donné, il suffit d'un ORDER BY clause :

select trim(regexp_substr('bbb;aaa;qqq;ccc','[^;]+', 1,level) ) as q 
from dual
connect by regexp_substr('bbb;aaa;qqq;ccc', '[^;]+', 1, level) is not null
order by level