Запрос ActiveRecord для всех данных за последний день и каждой сотой записи за предыдущий - PullRequest
2 голосов
/ 24 апреля 2019

У меня есть процесс, который генерирует новую запись каждые 10 минут.Некоторое время это было здорово, но теперь Datum.all возвращает 30 тыс. + Записей, которые не нужны, поскольку их цель - просто отобразить их на графике.

Итак, в качестве простого решения я хотел бы предоставить все доступные данные, сгенерированные за последние 24 часа, но данные с низким разрешением (каждую сотую запись) до последних 24 часов (вплоть до началанабор данных).

Я подозреваю, что решение состоит в некоторой комбинации этого ответа, который выбирает каждую n-ую запись (но была предоставлена ​​в 2010 году), и этого ответа, который объединяет два объекта ActiveRecord

Но я не могу понять, как получить работающую реализацию, которая получает все необходимые данные в одну переменную экземпляра

1 Ответ

2 голосов
/ 24 апреля 2019

Вы можете использовать OR запрос:

Datum.where("created_at>?", 1.day.ago).or(Datum.where("id%100=0"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...