我有一张传感器数据表。每行都有一个传感器 ID、一个时间戳和其他字段。我想为每个传感器选择一个带有最新时间戳的单行,包括其他一些字段。
我认为解决方案是按传感器 id 分组,然后按 max(timestamp) 排序,如下所示:
SELECT sensorID,timestamp,sensorField1,sensorField2
FROM sensorTable
GROUP BY sensorID
ORDER BY max(timestamp);
这给了我一个错误,说“sensorField1 必须出现在 group by 子句中或在聚合中使用。”
解决这个问题的正确方法是什么?