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

MySql select IN chaîne de clause délimitée par des virgules

Vous pouvez utiliser le MySQL FIND_IN_SET fonction :

SELECT *
FROM my_table
WHERE FIND_IN_SET(id, comma_delimited_string) = 0

Avenant  :Notez que la requête ci-dessus n'est pas optimisable, donc si vous avez un index sur id MySQL ne l'utilisera pas. Vous devrez décider si la relative simplicité d'utilisation de FIND_IN_SET vaut la peine de prendre un coup de performance potentiel (je dis potentiel parce que je ne sais pas si id est indexé ou si votre table est suffisamment grande pour que cela pose problème).