Предположим, у меня есть таблица с 3 столбцами:
- id (PK, int)
- метка времени (datetime)
- title (text)
У меня есть следующие записи:
1, 2010-01-01 15:00:00, Some Title
2, 2010-01-01 15:00:02, Some Title
3, 2010-01-02 15:00:00, Some Title
Мне нужно сделать записи GROUP BY, которые находятся в пределах 3 секунд друг от друга.Для этой таблицы строки 1 и 2 будут сгруппированы вместе.
Здесь есть похожий вопрос: Mysql DateTime group через 15 минут
Я также нашел это: http://www.artfulsoftware.com/infotree/queries.php#106
Я не знаю, как преобразовать эти методы во что-то, что будет работать в течение нескольких секунд.Проблема метода SO в том, что мне кажется, что он будет работать только для записей, попадающих в интервал времени, который начинается в известной точке.Например, если бы я заставил FLOOR()
работать с секундами, с интервалом в 5 секунд время 15:00:04 было бы сгруппировано с 15:00:01, но не сгруппировано с 15:00:06.
Имеет ли это смысл?Пожалуйста, дайте мне знать, если необходимы дальнейшие разъяснения.
РЕДАКТИРОВАТЬ: Для набора чисел, {1, 2, 3, 4, 5, 6, 7, 50, 51, 60}, возможно, было бы лучше сгруппировать их {1, 2, 3, 4, 5, 6, 7}, {50, 51}, {60}, чтобы каждая строка группировки зависела от того, находится ли строка в пределах 3секунд предыдущего.Я знаю, что это немного меняет вещи, я прошу прощения за то, что не очень хорошо разбираюсь в этом.
Я пытаюсь нечетко сопоставлять журналы с разных серверовСервер № 1 может регистрировать элемент «Элемент № 1», а Сервер № 2 регистрирует этот же элемент «Элемент № 1» в течение нескольких секунд после получения сервером № 1.Мне нужно сделать несколько агрегатных функций в обеих строках журнала.К сожалению, у меня есть только название, из-за природы серверного программного обеспечения.