Группировать можно, это SQL умеет. Но как это делать, не совсем понятно по описанию.
Каждые какие 4 секунды?
Из повторов чего именно нужно выбрать максимальное значение?
Максимальное значение чего - из того же поля или другого?
А усреднять по каким-то интервалам - это можно попробовать сделать на SQL, но процесс больше будет похож на пытки, чем на создание.
Но если задумана группировка по дате и времени с выбором максимального уровня, то нужно нечто такое:
SELECT "Date", "Time", Level
FROM tablename t
GROUP BY "Date", "Time" HAVING Level = (SELECT MAX(Level) FROM tablename t1 WHERE
t1.Date =
t.Date and t.Time = t1.Time)
Диалект SQL не указан, так что с оборачиванием имён полей, похожих на ключевые слова, самостоятельно.
Date Time Level
09.11.2022 11:28:48 -54.2
09.11.2022 11:28:48 -76.2
09.11.2022 11:28:48 -81
09.11.2022 11:28:48 -82
09.11.2022 11:28:48 -82.1
09.11.2022 11:28:48 -100.4
09.11.2022 11:28:52 -54.5
09.11.2022 11:28:52 -77.3
09.11.2022 11:28:52 -80.1
09.11.2022 11:28:52 -82.2
09.11.2022 11:28:52 -83.4
09.11.2022 11:28:52 -103.3
09.11.2022 11:28:56 -53.2
09.11.2022 11:28:56 -77.7
09.11.2022 11:28:56 -79.7
09.11.2022 11:28:56 -81.8
09.11.2022 11:28:56 -84.2
09.11.2022 11:28:56 -101.5
09.11.2022 11:28:58 -53.4
09.11.2022 11:28:58 -78.6