Tôi có một bảng dữ liệu cảm biến. Mỗi hàng có một id cảm biến, một dấu thời gian và các trường khác. Tôi muốn chọn một hàng có dấu thời gian mới nhất cho từng cảm biến, bao gồm một số trường khác.
Tôi nghĩ rằng giải pháp sẽ là nhóm theo id cảm biến và sau đó sắp xếp theo tối đa (dấu thời gian) như vậy:
SELECT sensorID,timestamp,sensorField1,sensorField2
FROM sensorTable
GROUP BY sensorID
ORDER BY max(timestamp);
Điều này khiến tôi gặp lỗi khi nói rằng "sensorField1 phải xuất hiện trong nhóm theo mệnh đề hoặc được sử dụng trong một tổng thể."
Cách chính xác để tiếp cận vấn đề này là gì?