IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Problème avec un slash dans un LIKE et utilisation d'index


Sujet :

Requêtes MySQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Problème avec un slash dans un LIKE et utilisation d'index
    Bonjour,

    J'ai un soucis avec un LIKE. En utilisant EXPLAIN je me suis rendu compte d'un truc.

    Prenons une table ayant un champs nommé 'texte' avec un index dessus.

    Si je veux par exemple rechercher tous les enregistrements commençant par un "en", je fais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT meschamps FROM matable WHERE texte LIKE 'en%';
    L'explain me montre que MySQL utilise l'index de texte pour faire la requete.

    Maintenant si je veux tous les enregistrements dont 'texte' commence par un '/en' je fais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT meschamps FROM matable WHERE texte LIKE '/en%';
    Et là le explain me montre que MySQL n'utilise plus l'index!!!!

    Or moi j'ai besoin de rechercher des chaines commencant par un "/", donc ça m'arrange pas...

    Dans la doc de MySQL je n'ai pas trouvé que le "/" soit un caractère special, je ne comprends pas pourquoi l'index n'est pas utilisé.

    Quelqu'un a une idée?

    merci.

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Bin j'ai trouvé, en fait il n'y a pas d"erreur due au slash, c'est autre chose!

    En fait quand MySQL doit lire plus de 30% des lignes d'une table alors il n'utilise pas d'index meme si celui ci est présent. C'était mon cas pour ma table et ma recherche.... Ca ne venait donc pas du like.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec MetaFilenameFilter (slash dans des String)
    Par Sylver--- dans le forum Langage
    Réponses: 6
    Dernier message: 14/08/2007, 15h16
  2. Problèmes avec un TWebBrowser dans une DLL
    Par bellamyjc dans le forum Composants VCL
    Réponses: 2
    Dernier message: 12/01/2005, 23h35
  3. Problème avec XML.Clear dans un TXMLDocument
    Par Tardiff Jean-François dans le forum Composants VCL
    Réponses: 2
    Dernier message: 04/01/2005, 12h45
  4. [VB.NET] Problème avec un OptionButton dans Excel 2003
    Par alfprod dans le forum Windows Forms
    Réponses: 3
    Dernier message: 09/09/2004, 14h40
  5. [MFC] problème avec les insertions dans CComboBox
    Par Joeleclems dans le forum MFC
    Réponses: 12
    Dernier message: 11/06/2004, 16h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo