Optimisation requête
Posté : 07 mai 2023, 18:14
Bonjour,
Je récupère à l'aide d'une requête la température maxi et mini des dernières 24 heures.
Pour récupérer les tstamp de ces deux valeurs, j'utilise deux requêtes. Ca fonctionne mais le temps chargement est assez long, ce sont les deux requêtes pour récupérer le tstamp qui allongent le temps de chargement de la page.
Y a-t-il un moyen pour optimiser les requêtes afin que le chargement soit plus court. Les résultats de ces requêtes sont destinées à un tableau et non à un graphique.
Je récupère à l'aide d'une requête la température maxi et mini des dernières 24 heures.
Pour récupérer les tstamp de ces deux valeurs, j'utilise deux requêtes. Ca fonctionne mais le temps chargement est assez long, ce sont les deux requêtes pour récupérer le tstamp qui allongent le temps de chargement de la page.
Code : Tout sélectionner
//température maxi et mini
$sql=("SELECT max(outdoortemperature) as temp_max, min(outdoortemperature) as temp_min FROM data WHERE tstamp >= '$start' and tstamp <= '$stop' ORDER BY 1");
if ($resultat = mysqli_query($conn,$sql)) {
while ($donnees = mysqli_fetch_object($resultat))
{
$cont=$donnees ;
$temp_max = $cont->temp_max;
$temp_min = $cont->temp_min;
}
mysqli_free_result($resultat);
}
//date et heure température maxi
$sql1="SELECT tstamp FROM `data` WHERE outdoortemperature = '$temp_max'";
if ($resultat = mysqli_query($conn,$sql1)) {
while ($donnees = mysqli_fetch_object($resultat))
{
$cont=$donnees ;
$tstamp_temp_max = $cont->tstamp;
}
mysqli_free_result($resultat);
}
//date et heure températuremini
$sql2="SELECT tstamp FROM `data` WHERE outdoortemperature = '$temp_min'";
if ($resultat = mysqli_query($conn,$sql2)) {
while ($donnees = mysqli_fetch_object($resultat))
{
$cont=$donnees ;
$tstamp_temp_min = $cont->tstamp;
}
mysqli_free_result($resultat);
}