Door
Marco Mattheijer
op 21-05-2018 12:02
gewijzigd op 21-05-2018 12:03
5.208 views
Hallo allemaal,
Ik heb een mysql database waar iedere seconde een temperatuur wordt ingeschoten.
Nu wil ik graag een query maken waar het gemiddelde van ieder uur uit komt.
Dit is de query die ik nu gebruik
$result=mysql_query("SELECT * FROM `templog` ORDER BY `timeStamp` DESC",$link);
kan iemand mij op weg helpen?
PS: Waarom gebruik je nog de verouderde MySQL-functies? Tegenwoordig wordt MySQLi of PDO aangeraden.
Dat zal ik proberen uit te leggen,
Ik ben 2,5 jaar geleden met het projectje begonnen.
2 jaar geleden heb ik een herseninfarct gekregen en ben ik lang it de roulatie geweest. veel info ben ik kwijt en moet dus veel opnieuw leren. nu heb ik mijn projectje weer opgepakt en probeer ik weer verder te komen. nu blijkt dus dat ik eigenlijk opnieuw moet beginnen ?
is niet erg maar soms heb ik wat hulp nodig.
Zo ongeveer:
select AVG(temperatuur) from templog where datum = vandaag group by uur
Wel zelf de syntax nog even op orde brengen qua namen en tijdfunctie
Alternatief: omdat het informatie over tijd betreft, en deze na afloop nooit meer verandert, zou je er ook voor kunnen kiezen om deze eenmalig te berekenen / uit te draaien, en dan in een statisch document of aggregaat-tabel op te slaan. Je hoeft deze dan nooit meer opnieuw te berekenen.
Houdt wel in dat als je een nieuw soort rapportage wilt, dat je deze opnieuw (eenmalig) zult moeten berekenen.
Zo ongeveer:
select AVG(temperatuur) from templog where datum = vandaag group by uur
Wel zelf de syntax nog even op orde brengen qua namen en tijdfunctie
AVG -> Gemiddelde
ik ga hier even mee stoeien
[size=xsmall]Toevoeging op 21/05/2018 15:37:28:[/size]
- Ariën - op 21/05/2018 12:14:48
Maar hoe ziet je databasetabel er uit?
# Naam Type Collatie Attributen Leeg Standaardwaarde Extra Actie
1 id int(11) Nee Geen AUTO_INCREMENT Veranderen Verwijderen Meer
2 timeStamp timestamp on update CURRENT_TIMESTAMP Nee CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP Veranderen Verwijderen Meer
3 temperature float Ja NULL Veranderen Verwijderen Meer
4 humidity float Nee Geen Veranderen Verwijderen Meer
5 Luchtdruk float Nee Geen Veranderen Verwijderen Meer
6 temperature2 float Nee Geen Veranderen Verwijderen
[size=xsmall]Toevoeging op 21/05/2018 21:51:10:[/size]
Aad B op 21/05/2018 12:21:48
Zo ongeveer:
select AVG(temperatuur) from templog where datum = vandaag group by uur
Wel zelf de syntax nog even op orde brengen qua namen en tijdfunctie
AVG -> Gemiddelde
Ik hoop dat jullie een beetje geduld op kunnen brengen met mij?
Maar ik krijg de syntax niet goed. ik denk dat "datum = vandaag group bij uur" niet klopt ?