|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre du Club
![]() Développeur Web Inscription : juillet 2009 Messages : 54 ![]() |
Bonjour,
Je dois faire une requête croisée sur 2 tables, l'une de 70.000 entrées (liste des établissements scolaires français), et l'autre de 5.000 (mes contacts dans ces établissements) : Code :
J'ai vu qu'en créant des index on pouvait obtenir de meilleures performances, mais je vois pas comment m'y prendre... Surtout que le champ "CodePostal" n'existe que dans une des deux bases... Vos lumières sont bienvenues Merci d'avance |
||
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
les index servent à optimiser tes recherches, en gros c'est tes champs clés avec lequel tu fais le plus de requêtes,
pour toi ça serai : educ_nat.CODE_GESTION mes_contacts.CODE_GESTION tu peux toujours essayer de mettre educ_nat.CodePostal en index aussi, mais c'est un peu différent pour ORDER BY
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#3 | ||
|
Membre confirmé
![]() Bertrand Étudiant Inscription : octobre 2010 Messages : 216 ![]() |
Bonjour,
j'ai peut être une autre solution. Tu pourrais trier ton résultat dans PHP, je ne sais pas si se sera plus rapide mais je sais qu'il existe des systèmes de trie de tableau plutôt performant comme ceci: Code :
En espérant t'avoir aidé
__________________
Ce n'est pas ce que nous voulons faire qui est impossible mais ce sont les moyens à sa mise en oeuvre qui peuvent le paraître Ps: N'oubliez pas SVP
|
||
|
|
00
|
|
|
#4 |
|
Membre du Club
![]() Développeur Web Inscription : juillet 2009 Messages : 54 ![]() |
Merci pour vos réponses. J'ai commencé par la solution de stealth35 (index sur les champs "CODE_GESTION") et mon problème est réglé!
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com