Поскольку записи в базе данных вставляются от самых старых до самых новых, вы можете создать 2 вызова.Первый вызов, запрашивающий идентификатор самой старой записи:
int oldestRecordID = SELECT TOP 1 MIN(id)
FROM LOGS
WHERE datetime > DATE_SUB(NOW(), INTERVAL 1 MONTH)
Затем с этим идентификатором просто запросите все записи, где ID> oldRecordID:
SELECT *
FROM LOGS
WHERE ID > oldestRecordID
Это несколько вызовов, но это может бытьбыстрее, но я уверен, что вы могли бы объединить эти 2 звонка тоже.