I have a table with three columns and several million rows of data.
sensor_data
sensor_id int PK
date datetime PK,
data decimal (10,3)
This query returns the most recent date for sensor 4, but the oldest data for sensor 4:
select max(date), data
from sensor_data
where sensor_id = 4;
These queries return correct values for data:
select date, data
from sensor_data
where sensor_id = 4
and date = (select max(date) from sensor_data where sensor_id = 4)
order by date desc;
select date, data
from sensor_data
where sensor_id = 4
order by date desc
limit 1;
I'm new to MySQL. Am I using max()
wrong, or is this how it's supposed to work?