Mam tabelę danych czujnika. Każdy wiersz zawiera identyfikator czujnika, znacznik czasu i inne pola. Chcę wybrać jeden wiersz z najnowszą sygnaturą czasową dla każdego czujnika, w tym niektóre inne pola.
Pomyślałem, że rozwiązaniem byłoby pogrupowanie według identyfikatora czujnika, a następnie uporządkowanie według max (znacznika czasu) w następujący sposób:
SELECT sensorID,timestamp,sensorField1,sensorField2
FROM sensorTable
GROUP BY sensorID
ORDER BY max(timestamp);
To daje mi błąd mówiąc, że „sensorField1 musi występować w klauzuli group by lub być używane w agregacji”.
Jaki jest właściwy sposób rozwiązania tego problemu?