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

Clause MySQL IN :nombre maximal d'arguments

Vous pouvez également faire en sorte que la clause IN prenne les résultats d'une requête, par exemple :

SELECT * FROM table1 
WHERE table1.id IN 
    (
   SELECT id from table2
    )

De cette façon, vous n'avez pas besoin de générer une chaîne de texte avec toutes les valeurs possibles.

Dans mysql, vous devriez pouvoir mettre autant de valeurs dans la clause IN que vous le souhaitez, uniquement limité par la valeur de "max_allowed_packet".

http://dev.mysql.com/doc /refman/5.0/en/comparison-operators.html#function_in http://dev.mysql.com /doc/refman/5.0/en/server-system-variables.html#sysvar_max_allowed_packet