MySQL | REGEXP VS J'aime
J'ai une table CANDIDAT dans ma db, qui est en cours d'exécution en vertu de MySQL 5.5 et j'essaie d'obtenir les lignes de la table où la RAM est contient des colonnes firstname, afin que je puisse courir en dessous de deux requêtes, mais je voudrais maintenant de la requête, nous devrions l'utiliser pour le long terme à l'égard de l'optimisation.
SELECT * FROM CANDIDATE c WHERE firstname REGEXP 'ram';
SELECT * FROM CANDIDATE c WHERE firstname LIKE'%ram%';
source d'informationauteur Vardan Gupta
Vous devez vous connecter pour publier un commentaire.
La
Like
requête est plus optimisé que par les commentaires dit ici..http://thingsilearn.wordpress.com/2008/02/28/mysql-query-speed-regexp-vs-like/
REGEXP
etLIKE
sont utilisés pour totalement différents cas.LIKE
est utilisé pour ajouter des caractères génériques dans une chaîne de caractères alors queREGEXP
est utilisé pour faire correspondre un attribut avec des Expressions Régulières.Dans votre cas
firstname
est plus susceptible d'être appariés en utilisantLIKE
queREGEXP
et, par conséquent, il sera plus optimisé.Si vous pouvez l'utiliser COMME lieu de REGEXP, l'utilisation COMME
Mieux Utiliser COMME Requête au lieu de REGEXP si vous n'êtes pas sûr de la valeur.
AIME aussi c'est beaucoup plus rapide que la REGEXP.