sql >> Databasteknik >  >> RDS >> Oracle

SQL (oracle) för att jämföra två listor

Två alternativ:

Använd regexp_like , om du använder Oracle 10g eller högre:

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

Detta matchar allt från din tabell där a eller b eller c finns i kolumnen.

Alternativt kan du göra det mer hemska och svåra att underhålla:

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

Här är en liten SQL-fiol att demonstrera.

Men som du redan vet kommer normalisering av din databas att spara dig mycket smärta på längre sikt.



  1. Bästa metoder för skalning av databaser:del två

  2. Långsamt körande Postgres-fråga

  3. Ny funktion för BYOC – Pausa och återuppta kluster

  4. Generiskt dödat fel i PHP-skript