sql >> Database >  >> RDS >> Oracle

SQL (oracle) om twee lijsten te vergelijken

Twee opties:

Gebruik regexp_like , als u Oracle 10g of hoger gebruikt:

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

Dit komt overeen met alles uit uw tabel waar a of b of c staat in de kolom.

Als alternatief kun je het meer verschrikkelijke en moeilijker te onderhouden doen:

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

Hier is een kleine SQL Fiddle demonstreren.

Zoals u echter al weet, zal het correct normaliseren van uw database u op de langere termijn veel pijn besparen.



  1. Gegevenstype JDBC, Elasticsearch en Postgresql Json

  2. Meerdere groepen gebruiken door in één query te hebben

  3. PostgreSQL Connection Pooling:Deel 4 – PgBouncer vs. Pgpool-II

  4. mySQL-query voor het selecteren van kinderen