sql >> Base de Datos >  >> RDS >> Mysql

cómo eliminar todos los registros excepto uno por hora

Deberías poder hacer algo como

Select * from observations where <old> group by sensortype, stationid, extract(year_month, measure_date), extract(day_hour, measure_date);

group_by colapsará los registros de cada grupo en uno. Puede seleccionar esto en una nueva tabla si lo desea.

Si realmente necesita eliminar todos los registros antiguos redundantes, simplemente seleccione los números de datos utilizando la consulta anterior y luego elimine todos los registros NOT IN(<those ids>) .