Vinzenz Mai: mySQL - min/max aus werteliste

Beitrag lesen

Hallo,

die schwierigkeit dabei ist, dass ich pro tag bis zu 500 messwerte
(temperatur des serverraumes) habe, und nur den höchsten bzw. niedrigsten wert des tages brauche. noch dazu sollte das idealerweise mit einem von-bis datum funktionieren.
ich hab keine ahnung wie ich da ansetzen soll...

MIN und MAX sind schon mal zwei gute Ansätze, zwischen heißt auf englisch BETWEEN,

+---+----------+------+---------------------+
|id | messwert | raum | timestamp           |
+---+----------+------+---------------------+
|1  | 13.3     | 1    | 2008-09-09 13:12:30 |
+---+----------+------+---------------------+
|2  | 13.4     | 1    | 2008-09-09 13:15:10 |
+---+----------+------+---------------------+
|3  | 14.1     | 2    | 2008-09-10 14:13:00 |
+---+----------+------+---------------------+

also schauen wir nach, was wir im Handbuchabschnitt "Funktionen und Operatoren" alles so finden:

Dabei ist zu beachten, dass MIN und MAX Aggregatsfunktionen sind, die mit der GROUP-BY-Klausel verwendet werden müssen, falls es nicht aggregierte Spalten gibt. Soweit ich Dich verstanden habe ist Deine Anforderung wie folgt:

Gib mir
    den minimalen Messwert,
    den maximalen Messwert,
    und den Raum
aus
    meiner Tabelle
wobei nur die Werte berücksichtigt werden sollen,
    die zwischen Anfangs- und Endwert liegen,
gruppiert nach
    den Räumen (d.h. je Raum einen Datensatz mit dem minimalen und maximalen Messwert)
optional noch
sortiert
    wie gefordert

Das kannst Du 1:1 in ein SQL-Statement umsetzen, das selbst MySQL 3.23 noch versteht.

Freundliche Grüße

Vinzenz