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

Limitation sur IN()

Lorsqu'elle est explicitement indiquée, la limite est de 1 000, c'est-à-dire :

select * from the_table where id in (1, 2, ..., 1000)

Ceci se trouve dans la documentation sur la condition IN :

Lorsqu'il n'est pas explicitement indiqué, il n'y a pas de limite :

select * from table1 where id in ( select id from table2 )

Bien qu'utiles, il existe souvent de meilleurs moyens de transmettre autant de valeurs ou plus à un SELECT. Il pourrait être utile d'envisager une table de référence d'une certaine description ou JOIN.

Voir aussi :