Requete sql avec les dates
Bonjour,
J'ai une table 'releve' qui contient plusieurs champs: id, date, heure, temperature (c'est un relevé météo d'une année avec une fréquence de mesure d'1 quart d'heure....)
Code:
1 2 3 4
| SELECT MAX(temperature) AS temperature, date, heure
FROM releve
WHERE TO_DAYS(NOW()) - TO_DAYS(date) <7
GROUP BY date |
J'obtiens ceci avec la requête précédente:
temperature| date| heure
8.64722| 2008-11-24| 00:15:00
7.36931| 2008-11-25| 00:15:00
9.44333| 2008-11-26| 00:15:00
8.82167| 2008-11-27| 00:15:00
6.37695| 2008-11-28| 00:15:00
5.38833| 2008-11-29| 00:15:00
3.83257| 2008-11-30| 00:15:00
Le problème est que l'heure retournée ne correspond pas à l'heure où la température était la maximale mais à l'heure du premier enregistrement de la journée (minuit quinze)
Visiblement on ne peut pas mettre de MAX() dans une clause WHERE, sinon j'aurais fait ça:
Code:
1 2 3 4
| SELECT MAX(temperature) AS temperature, date, heure
FROM releve
WHERE TO_DAYS(NOW()) - TO_DAYS(date) <7 AND temperature = MAX(temperature)
GROUP BY date |
d'avance merci pour l'aide apportée