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 :

Question sur les index mysql


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Inscrit en
    Août 2005
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 44
    Points : 40
    Points
    40
    Par défaut Question sur les index mysql
    Bonjour,
    Je me pose des questions sur l'index à mettre pour cette requete
    SELECT * FROM table WHERE id= AND position BETWEEN '' AND '' ORDER BY id '

    Là pas de soucis, je met un double index sur id et position.
    Mais quelque fois je rajoute un champ
    SELECT * FROM table WHERE id= AND caracteristique=1 AND position BETWEEN '' AND '' ORDER BY id '

    J'ai rajouté un champ caracteristique. Ce champ est toujours à 1 dans la requète.

    Pensez-vous qu'un index sur les 3 champs (id,position et caracteristique)sera pénalisant pour la première requète?
    Devrais-je plutot mettre un double index et en mettre un autre sur caracteristique en plus?

    Merci

  2. #2
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    Normalement non si "caracteristique" est en dernier dans l'index... mais je ne suis pas certain qu'il serve à grand chose à part à faire grossir l'index... Ce qui occupe le cache des indexes et fait des accès disques plus lourds... donc la réponse est "plutôt non mais pas totalement".

    Combien d'éléments avec "caracteristique=1" et combien sans pour une même valeur des deux premiers champs ? Si c'est 1 pour pleins c'est intéressant, sinon (genre 1 et 1) pour une requête intempestive c'est peut-être overkill.

  3. #3
    Membre du Club
    Inscrit en
    Août 2005
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 44
    Points : 40
    Points
    40
    Par défaut
    Il y a beaucoup plus de caracteristiques à 0 qu'a 1
    DOnc la solution serait de ne pas mettre du tout d'indexe sur caracteristique c'est ca?
    Merci

  4. #4
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    L'idéal serait d'expérimenter. Changer les indexes n'est ni difficile ni dangereux.

    C'est un peu une question de ralentir ou alourdir un brin (peut-être même carément négligeable) le cas usuel pour accélérer pas mal un cas moins fréquent.

    A parier je dirais quand même que le côté négatif ne doit pas être assez sensible pour s'en priver (ajouter un entier ne doit pas alourdir l'index des masses). Il faudrait vraiment que le serveur soit surchargé pour que ce soit un problème.

  5. #5
    Membre du Club
    Inscrit en
    Août 2005
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 44
    Points : 40
    Points
    40
    Par défaut
    Le souci c'est qu'experimenter ca donne pas grand chose, et faut faire varier pas mal de paramètres
    Tu as peut etre raison, le gain est ici surement negligable.

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

Discussions similaires

  1. question sur les index
    Par sohm dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 25/07/2006, 12h42
  2. Question sur les index
    Par Veve44 dans le forum Oracle
    Réponses: 3
    Dernier message: 09/11/2005, 14h01
  3. Question sur les index
    Par barok dans le forum Décisions SGBD
    Réponses: 4
    Dernier message: 31/05/2005, 08h06
  4. [DB2] Question sur les index et les vues
    Par ahoyeau dans le forum DB2
    Réponses: 1
    Dernier message: 14/03/2005, 08h30
  5. Questions sur les indexations
    Par freud dans le forum Bases de données
    Réponses: 2
    Dernier message: 11/05/2004, 11h38

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