Hallo,
ich greife auf eine Datenbank zu, welche Messwerte speichert. Die Messwerte werden in unterschiedlichen Zeitintervallen abgelegt. Für jeden Messwert kann die Messquelle durch das Feld datasource_id identifiziert werden. Anhand dieser datasource_id mache ich eine Auswahl der Zeilen meiner Tabelle. Zu jedem Messwert besteht auch ein Zeitstempel (timestamp). Anhand dieses Zeitstempels möchte ich nur den letzten Messwert für jede einzelne Messquelle auswählen. In value ist der Messwert hinterlegt.
Würden die Messwerte alle mit dem gleichen Zeitintervall abgelegt, könnte ich mit
select datasource_id, timestamp, value from data where datasource_id in (1, 2, 3, 4, 5) order by timestamp desc limit 5;
die zeitlich zuletzt eingefügten Messwerte erhalten. Wie kann ich sicherstellen, dass ich für jeden Messwert aus einer Messquelle den letzten Wert erhalte?
Vielen Dank für Eure Hilfe!
ich greife auf eine Datenbank zu, welche Messwerte speichert. Die Messwerte werden in unterschiedlichen Zeitintervallen abgelegt. Für jeden Messwert kann die Messquelle durch das Feld datasource_id identifiziert werden. Anhand dieser datasource_id mache ich eine Auswahl der Zeilen meiner Tabelle. Zu jedem Messwert besteht auch ein Zeitstempel (timestamp). Anhand dieses Zeitstempels möchte ich nur den letzten Messwert für jede einzelne Messquelle auswählen. In value ist der Messwert hinterlegt.
Würden die Messwerte alle mit dem gleichen Zeitintervall abgelegt, könnte ich mit
select datasource_id, timestamp, value from data where datasource_id in (1, 2, 3, 4, 5) order by timestamp desc limit 5;
die zeitlich zuletzt eingefügten Messwerte erhalten. Wie kann ich sicherstellen, dass ich für jeden Messwert aus einer Messquelle den letzten Wert erhalte?
Vielen Dank für Eure Hilfe!
Comment