Bonjour tout le monde,
J'ai un gros souci de temps d'affichage pour ma requête.
Imaginons :
1 table de 50000 compétitions : competitions
1 table de 5000 arbitres : arbitres
et
1 table qui permet d'indiquer tous les arbitres pour chaque compétition : gestion
J'affiche le tout via ma requête classique :
Premiere question ya t'il une façon de réécrire plus proprement cette requête afin d'optimiser le temps s'il vous plait.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $requete = "SELECT D.idCOMPET, D.nom_compet, D.tel_compet, D.email, D.date, D.supp, G.idARBITRE, U.idARBITRE FROM `".$suff_table."competitions` D, `".$suff_table."gestion` G, `".$suff_table."arbitres` U where D.idCOMPET=G.idCOMPET and G.idARBITRE=U.idARBITRE GROUP by D.idCOMPET order by D.idCOMPET desc"; $resultat = mysql_query("$requete");
Deuxieme question plus JS que PHP, j'utilise le plugins https://datatables.net/ qui classe tous les resultats sous forme de tableau, avec plusieurs pages (pagination tous les 100 resultats) mais surtout il me permet une recherche via un seul input sur toutes les informations présentes dans le tableau, ce qui est HYPER pratique pour mes recherches
Le problème c'est qu'il accroit le temps d'affichage considérablement (2mn), car il doit une fois tout afficher, classer la premiere colonne par ordre alphabétique.
Donc peut être qu'il faudrait que je zappe ce plugins, que j'affiche ma requête sous un tableau simple même si les 50000 lignes s'affiche sur la page (donc pas de pagination) et que je créé mon input avec recherche dans la page, et c'est la que ça se complique car faire des recherche avec LIKE, ok je sais faire mais l'interet du plugins est qu'il recherche n'importe quoi parmi les infos affichées, dans le cas ou c'est moi qui créé la recherche avec LIKe je risque d'en avoir des champs a tester ....
Merci de tous vos conseils et aides.
PS : A tous ceux qui pensent que je dois abandonner mysql pour PDO vous avez entièrement raison, mais j'attends cet été pour comprendre PDO, dans l'immédiat j'ai juste besoin de comprendre comme améliorer mon code en restant sur mysql, merci de votre indulgence.
Guillaume
Partager