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

SQL (oracle) pour comparer deux listes

Deux possibilités :

Utilisez regexp_like , si vous utilisez Oracle 10g ou supérieur :

select *
  from my_table
 where regexp_like(listcolumn, '[abc]')

Cela correspond à tout de votre table où a ou b ou c est dans la colonne.

Sinon, vous pouvez faire le plus horrible et difficile à entretenir :

select *
  from my_table
 where listcolumn like '%a%'
    or listcolumn like '%b%'
    or listcolumn like '%c%'

Voici un petit SQL Fiddle démontrer.

Cependant, comme vous le savez déjà, normaliser correctement votre base de données vous évitera beaucoup de douleur à long terme.