[MySQL] Plusieurs index sur plusieurs champs..
4 messages
• Page 1 sur 1
- RomsIW
- WRInaute passionné

- Messages: 1144
- Inscription: 25 Mai 2004
[MySQL] Plusieurs index sur plusieurs champs..
Bonjour à tous,
j'essaie un petit peu d'optimiser mes requêtes, notamment au niveau des index.
L'idée est que j'ai une table sur laquelle mes where vont tantôt taper sur un champ (C1), tantôt sur un autre (C2) => WHERE C1=qqchose OU WHERE C2=qqchose
Mais sur d'autres requêtes, le WHERE se fait sur les deux => WHERE C1=qqchose AND C2=qqchose
Que vaut-il mieux faire ?
Mettre un index séparé pour chacun des deux champs ?
Mettre un index commun pour ces deux champs ?
Mettre un index séparé pour chacun + un index commun ?
Merci de votre aide,
Rom's
j'essaie un petit peu d'optimiser mes requêtes, notamment au niveau des index.
L'idée est que j'ai une table sur laquelle mes where vont tantôt taper sur un champ (C1), tantôt sur un autre (C2) => WHERE C1=qqchose OU WHERE C2=qqchose
Mais sur d'autres requêtes, le WHERE se fait sur les deux => WHERE C1=qqchose AND C2=qqchose
Que vaut-il mieux faire ?
Mettre un index séparé pour chacun des deux champs ?
Mettre un index commun pour ces deux champs ?
Mettre un index séparé pour chacun + un index commun ?
Merci de votre aide,
Rom's
-

Bool - WRInaute passionné

- Messages: 1290
- Inscription: 26 Fév 2004
Le mieux à mon avis est de faire deux indexes : l'un contenant les colonnes A et B et l'autre contenant uniquement B.
Ainsi ces indexes seront utilisés dans ces 3 cas :
- A utilisé seul
- B utilisé seul
- A et B utilisés simultanément
Toutefois l'optimiseur MySQL peut décider d'utiliser un index ou non selon le nombre d'enregistrements de la table ou encore le nombre de colonnes récupérées.
En gros quand MySQL pense que l'index n'apporte rien, il ne l'utilisera pas.
Un analyze table (inclus dans le optimize table) de temps en temps permet d'ailleurs à l'optimiseur de MySQL de mieux estimer ces cas.
Ainsi ces indexes seront utilisés dans ces 3 cas :
- A utilisé seul
- B utilisé seul
- A et B utilisés simultanément
Toutefois l'optimiseur MySQL peut décider d'utiliser un index ou non selon le nombre d'enregistrements de la table ou encore le nombre de colonnes récupérées.
En gros quand MySQL pense que l'index n'apporte rien, il ne l'utilisera pas.
Un analyze table (inclus dans le optimize table) de temps en temps permet d'ailleurs à l'optimiseur de MySQL de mieux estimer ces cas.
4 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- Changer une fraction du contenue de plusieurs champs mysql ?
- Mysql : select d'une valeur dans un champs en contenant plusieurs
- update champs mysql
- Pb affichage de champs MySQL: 5.0.51aRecherche :
- UPDATE mysql ===> champs vide non voulus
- requet mysql sur debut de champs
- Requete MySQL sur plusieur champs.
- [MYSQL] compter champs de tables différentes
- Enregistrements consécutifs sur un champs dans MYSQL
- MYSQL ajout automatique de champs dans ma table
- Gestion des langues et des sessions en PHP / MySQL - 02-05-2004
- AdSense Tracking : statistiques détaillées sur les clics AdSense - 29-02-2004
- Passage à l'heure d'été/hiver sur un forum phpBB - 31-10-2010
- Sortie officielle de GoogleStats v2.0 ! - 23-02-2003
- Google Toolbar v2.0 - 25-06-2003
- Script de mise en cache des pages (PHP MySQL) - 09-08-2010
- GoogleStats : analyse temps réel des visites de Google sur votre site - 02-10-2002
- Le WRInaute du moment - 24-10-2006
Consultez la description détaillée des produits ou services de Google suivants : Outils linguistiques de Google
- La classe C de l'adresse IP
Cet outil vous permet de vérifier si plusieurs sites sont hébergés sur la même classe C (adresse IP du serveur). - Trouver la position de son site dans Google
Cet outil vous permet de vérifier si une ou plusieurs page(s) de votre site arrive(nt) dans les premiers résultats de Google, pour certains mots-clés recherchés. - Trouver la position de son site dans Yahoo
Cet outil vous permet de vérifier si une ou plusieurs page(s) de votre site arrive(nt) dans les premiers résultats de Yahoo, pour certains mots-clés recherchés. - Logiciel d'analyse du positionnement
AgentWebRanking est un logiciel professionnel qui permet d'analyser le positionnement d'un ou plusieurs sites dans plus de 300 moteurs de recherche dans le monde. Vous pouvez ainsi analyser les performances du référencement pour de nombreux mots-clés.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités


