Matze: brauch Hilfe bei MySQL-Statement

Beitrag lesen

Hi,

Wenn ich versuche "SELECT Daten FROM table GROUP BY Daten" kommt ein Array mit dem letzten Datensatz raus.

Dann hat also die Spalte Daten in allen Datensaetzen den selben Wert?

Nein, ich hatte einen Fehler bei der Ausgabe. Sorry.

Ok, ich bekomme jetzt also mein Array mit den jeweiligen Werten. Jeder Wert nur 1 mal.
Jetzt muss ich es so schreiben, dass die letzten 365 Tage gruppiert werden.

Note:
Nicht wundern weil ich jetzt zu 365 Tagen springe, aber da hab ich mehr Werte die ich bearbeiten kann. In den letzten 24h ist nur 1 Wert gespeichert.

Wie du gesagt hast, ergibt mein Datum in dem Fall wenig Sinn, weil ich so nach Sekunden gruppieren würde.
Also versuch ich mal Tage zu gruppieren...
"SELECT Daten, Datum FROM table GROUP BY DATE_FORMAT(Datum, '%Y%m%d')"

Funktioniert soweit auch bestens. Langsam bin ich wieder motoviert :)
Jetzt fehlt also nur noch die Abfrage nach dem Maximalwert und die Zeiteingrenzung, richtig?

$starttime = date("Y-m-d H:i", time()-60*60*24*365);  
$sql = "SELECT MAX(Daten) FROM table WHERE Datum > '".$starttime."' GROUP BY DATE_FORMAT(Datum, '%Y%m%d') ORDER BY Datum DESC";  
$query = mysql_query($sql);  
while($fetch = mysql_fetch_assoc($query)){  
    echo '<pre>';  
    print_r($fetch);  
    echo '</pre>';  
}

Ich bin grad dabei die Ausgabe zu überprüfen, aber es scheint zu funktionieren :)
Bitte sag doch fall du noch einen Verbesserungsvorschlag hast.

Herzlichen Dank!!

Grüße, Matze