sql >> Databáze >  >> RDS >> Oracle

ORA-01795:maximální počet výrazů v seznamu je 1000 , jak rozdělit řetězec

Musíte napsat smyčku, která provede SQL v blocích po 1000 záznamech.

Alternativně můžete hodnoty vložit do tabulky a poté provést podvýběr pomocí IN klauzule, protože s podvýběrem neplatí omezení na 1000 záznamů. Toto omezení platí pouze v případě, že používáte SQL s pevně zakódovaným hodnotovým řetězcem.

Něco takového:

select *
from mytable t
where t.column1 = value
and t.column2 in
(
    select my_values
    from my_temp_table
)



  1. TO_CHAR(číslo) Funkce vrací ORA-01722:neplatné číslo

  2. Jak zacházet s Day Light Saving v databázi Oracle

  3. Nesprávná syntaxe poblíž 'LIMIT' pomocí mssql

  4. Jak přidat dva sloupce typu časové razítko a celé číslo