У меня есть набор данных, который я хочу разделить по интервалу дат. Это набор очищенных веб-данных, и каждый элемент имеет отметку времени в миллисекундах в стиле unix, а также стандартную дату и время UTC.
Я хотел бы иметь возможность запрашивать набор данных, выбирая строки, наиболее близкие к различным временным интервалам: например: каждый час, один раз в день, один раз в неделю и т. д.
Нет никакой гарантии, что временные метки будут равномерно падать на временные интервалы, иначе я бы просто выполнил мод-запрос для временной метки.
Есть ли способ сделать это с помощью команд SQL, которые не включают хранимые процессы или какие-то предварительно вычисленные таблицы поддержки?
Я использую последнюю версию MariaDB.
EDIT: отмеченный ответ не совсем отвечает на мой конкретный вопрос, но это достойный ответ на более общую проблему, поэтому я пошел дальше и отметил его.
Я специально искал способ запросить набор данных, где метка времени сильно варьируется, и получить строки, которые достаточно близки к периодическим временным интервалам. Например: получить все строки, которые ближе всего к 24-часовым интервалам прямо сейчас.
В итоге я использовал модульный запрос для решения проблемы: отметка времени% интервал ‹ среднее расстояние между точками данных. Это иногда дает дополнительные очки и пропускает несколько, но этого было достаточно для моего графического приложения.
И мне надоело постоянно падать библиотека node-mysql, поэтому я перешел на MongoDB.