Existe-t-il une différence de comportement ou de performance dans le choix de la Find_in_set sur une opération qui ressemble à:
SELECT * FROM my_table WHERE column_1 LIKE '%string%';
vs
SELECT * FROM my_table WHERE FIND_IN_SET('string', column_1) > 0;
Ceci est fait sur le serveur Percona.
J'utiliserais comme pour une très bonne raison. De la documentation ici - "Cette fonction (Find_in_set) ne fonctionne pas correctement si le premier argument contient une virgule (", ") caractère".
Vous pouvez toujours utiliser une explication pour vérifier la performance - mais simplement pour la raison ci-dessus, je ne l'utiliserais pas.
[ÉDITER]
Vous pouvez toujours utiliser localiser () . Je Fortement Je vous recommande d'utiliser le type de données de mySQL. Il est non standard et illogique de dire le moins.