Hé, je dois utiliser la condition IN dans ma déclaration MySQL avec un grand ensemble d'identifiants.
Exemple
SELECT * FROM users WHERE id IN (1,2,3,4...100000)
Y a-t-il une limite si les éléments de l'instruction IN peuvent avoir?
Non il n'y en a pas, consultez le manuel sur la fonction IN :
Le nombre de valeurs dans la liste
IN
n'est limité que par la valeur max_allowed_packet .
Pour autant que je sache dans mysql, il n'y a pas de limite pour les éléments dans l'instruction IN
.
Dans Oracle, il existe une limite de 1 000 éléments dans l'instruction IN
.
Mais plus les éléments de IN
, les performances de votre requête ralentiront à moins que cette colonne soit indexée.