Powinieneś być w stanie zrobić coś takiego
Select * from observations where <old> group by sensortype, stationid, extract(year_month, measure_date), extract(day_hour, measure_date);
group_by
zwinie rekordy w każdej grupie w jedną. Możesz wybrać to do nowej tabeli, jeśli chcesz.
Jeśli chcesz faktycznie usunąć wszystkie nadmiarowe stare rekordy, po prostu wybierz numery danych za pomocą powyższego zapytania, a następnie usuń wszystkie rekordy NOT IN(<those ids>)
.