Интервал времени Postgresql SQL GROUP BY с произвольной точностью (до миллисекунд)

Мои данные измерений хранятся в следующей структуре:

CREATE TABLE measurements(
measured_at TIMESTAMPTZ,
val INTEGER
);

яalready знаю, что с помощью

(А)date_trunc('hour',measured_at)

А ТАКЖЕ

(Б)generate_series

Я бы смог агрегировать свои данные:

microseconds,
milliseconds
.
.
.

Но возможно ли объединить данные за 5 минут или, скажем, произвольное количество секунд? Можно ли агрегировать измеренные данные за произвольное кратное количество секунд?

Мне нужны данные, агрегированные по разным временным разрешениям, чтобы подать их в FFT или AR-модель, чтобы увидеть возможные сезонности.