sql >> Database teknologi >  >> RDS >> Oracle

Oracle SQL:Sådan bruger du mere end 1000 elementer i en IN-klausul

Den anbefalede måde at håndtere dette på i Oracle er at oprette en midlertidig tabel, skrive værdierne ind i denne og derefter tilslutte sig denne. Bruger dynamisk oprettet IN klausuler betyder, at forespørgselsoptimeringsværktøjet udfører en 'hard parse' af hver forespørgsel.

create global temporary table LOOKUP
(
    ID NUMBER
) on commit delete rows;

-- Do a batch insert from your application to populate this table
insert into lookup(id) values (?)

-- join to it
select foo from bar where code in (select id from lookup)


  1. Sådan installeres PgBackRest

  2. Hvordan kan jeg indføre flere betingelser i LIKE-operatoren?

  3. Sådan fungerer REPLICATE()-funktionen i SQL Server (T-SQL)

  4. NOT IN i postgresql virker ikke