я использую MongoDB (я новичок в MongoDB) для хранения данных о моем потреблении электроэнергии, каждую минуту появляется новая запись, вот пример:Найти последнюю запись каждого дня
{"id":"5309d4cae4b0fbd904cc00e1","adco":"O","hchc":7267599,"hchp":10805900,"hhphc":"g","ptec":"c","iinst":13,"papp":3010,"imax":58,"optarif":"s","isousc":60,"motdetat":"Á","date":1393156826114}
так что я имеют около 1440 записей в день.
Я хочу рассчитать стоимость за день, но проблема заключается в том, что мне нужна последняя запись дня, потому что эта запись может дать мне количество абсолютных кВтч (киловатт-час). Поэтому, если я удалю сумму kwh последней записи вчерашнего дня, у меня есть количество кВтч за день.
Поле hchp
дает мне этот абсолютный кВтч. Поле date
соответствует времени измерения в миллисекундах.
Потребление дня = абсолютное потребление в конце дня - абсолютное потребление в конце вчерашнего дня.
Как можно получить последнюю запись каждого дня в mongodb?
Примечание: Я использую MongoDB весной Java, поэтому мне нужен запрос, как это:
Пример, чтобы получить все необходимые меры:
@Query("{ 'date' : { $gt : ?0 }}")
public List<Mesure> findByDateGreaterThan(Date date, Sort sort);
Вы посмотрели на диапазон, представляющий дату, а затем, сортируя и ограничивая наивысшее значение даты? – WiredPrairie