Page 1 sur 1

Soucis avec LIKE/MySql ...

Posté : 04 janv. 2012, 03:43
par Zagoya
Bonjour,

Ma question peut être très simple mais après de nombreuses recherches je dois bien avouer ne pas m'en sortir :)

J'ai dans ma table un champs "categories" qui contient des suites de nombres séparés par des "|" (ex: 2|12|19|35|49). Lors de l'affichage, je voudrais sélectionner tous les enregistrements qui possèdent le 2 dans cette suite de nombres par exemple.

J'ai pensé à faire un LIKE '%2%' mais il est évident que cela me sortira des enregistrements qui ne possèdent pas le 2 mais le 12, le 24 ou tout autre nombre avec un 2 !

Quelle serait la solution pour trouver à coup sûr tous les enregistrements qui possède un 2 dans cette suite de nombres ?


Merci par avance,
Cordialement.

Re: Soucis avec LIKE/MySql ...

Posté : 04 janv. 2012, 07:46
par xTG
LIKE '%|2|%' est le seul moyen, mais il va falloir mettre un | en début et en fin de ton enregistrement.
Par contre je trouve cela moche... Une table de jointure aurait été mieux. ;)

Re: Soucis avec LIKE/MySql ...

Posté : 04 janv. 2012, 14:58
par Zagoya
Merci pour ta réponse.

En effet la table de jointure est beaucoup plus pratique mais après essai, les plusieurs milliers d'enregistrements présents font que la page met un temps énorme à s'afficher. Je vais voir pour ajouter le | en début alors désormais s'il n'y a pas d'autres options.

Merci à toi :)

Re: Soucis avec LIKE/MySql ...

Posté : 04 janv. 2012, 20:13
par xTG
Cela m'étonnerai fortement que le LIKE soit plus rapide qu'une table de jointure pour la recherche. :roll: