sql >> Base de Datos >  >> RDS >> Oracle

¿Cómo eliminar duplicados de la lista separada por comas por expresiones regulares en Oracle pero no quiero valores duplicados?

Pruebe esto, según el artículo http://www.dba-oracle.com/t_extract_comma_delimited_strings_oracle_sql.html:

select distinct str from
(select regexp_substr ('ABCD1234, XYZ, ABCD1234, ABCD1234C, ABCD1234, abc, abcX, 1234U, 1234', '[^, ]+',1, rownum) str 
from dual 
connect by level <= regexp_count ('ABCD1234, XYZ, ABCD1234, ABCD1234C, ABCD1234, abc, abcX, 1234U, 1234', '[^, ]+')) v;

Violín:http://sqlfiddle.com/#!4/c858d/5