|
Publicité | ||||||||||||||||||||||
|
|
#1 | ||
|
Membre habitué
![]() Inscription : août 2007 Messages : 634 ![]() |
Bonsoir à tous,
Ma requète fonctionne, mais elle est très, très, très lente !!! Code :
+ la date décroissante + l'hipodromme + son chrono La base comporte environ 30.000 lignes, sachant que le mème cheval ne courre pas forcément toutes les courses La requète prends environ 80 secondes pour s'afficher. Ma demande, c'est d'optimiser au maximum le temps de réponse. |
||
|
|
00
|
|
|
#2 | ||
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Tu affiches les 30000 lignes sur une meme page ?
au passage : tu n'as pas besoin d'une fonction PHPpour convertir ton format de date, mysql sait le faire Code :
|
||
|
|
00
|
|
|
#3 |
|
Membre habitué
![]() Inscription : août 2007 Messages : 634 ![]() |
Bonsoir sabotage,
Non, je n'affiche pas les 30.000 lignes, c'est le nombres de lignes de la base de données. Le résultat de la requète, ne devrais afficher que 200 ou 300 lignes maximum. Pour le nom du champ date, tu a raison, cela peut éventuellement faire conflit avec une variable système. Ma fonction : changedateusfr, corresponds a (%d/%m/%Y'), mais je pourais la shunter. |
|
|
00
|
|
|
#4 | |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Citation:
|
|
|
|
00
|
|
|
#5 |
|
Membre habitué
![]() Inscription : août 2007 Messages : 634 ![]() |
Simplement qu'un cheval ne courre pas toutes les courses.
|
|
|
00
|
|
|
#6 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Je ne comprends pas bien ; quand tu dis "La base comporte environ 30.000 lignes" tu parles de ta table recup_t ou d'autre chose ?
Si tu parles d'autre chose, combien de lignes retourne ta requête ? |
|
|
00
|
|
|
#7 |
|
Membre habitué
![]() Inscription : août 2007 Messages : 634 ![]() |
Comme je l'ai dit plus haut, sur une année, 30.000 chevaux ont courru,
le mème cheval lui n'aura courru en gros que 200 à 300 fois voir moins. Ma date est enregistrée au firmat Américain dans la base, c'est pourquoi je dois la transformer au format Français. |
|
|
00
|
|
|
#8 | |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Et la notion de ne considérer "qu'un seul cheval" apparait ou dans ton code ?
Citation:
|
|
|
|
00
|
|
|
#9 |
|
Membre habitué
![]() Inscription : août 2007 Messages : 634 ![]() |
Exact, j'aurais peut être du faire une requète en premier lieu sur le nom du cheval.
Et ensuite une autre requête pour les courses ou il a couru. |
|
|
00
|
|
|
#10 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Donc c'est bien ce que je dis depuis le début : ton code actuel sort les 30000 lignes ?
|
|
|
00
|
|
|
#11 |
|
Membre habitué
![]() Inscription : août 2007 Messages : 634 ![]() |
Oui, tu a raison, je vais tester avec 2 requètes.
|
|
|
00
|
|
|
#12 | ||
![]() ![]() |
Ta requête :
Code SQL :
Je crois comprendre à cette requête que tu n'as qu'une table qui stocke le nom du cheval et le nom de l'hippodrome autant de fois qu'ils apparaissent ? A moins que recup_t soit une vue, ta base de données n'est pas structurée correctement ! ![]() Les colonnes che et date sont-elles indexées pour optimiser les performances ?
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||
|
00
|
Copyright © 2000-2012 - www.developpez.com