У меня есть коллекция и документы хранятся с атрибутом даты. Я хотел бы проанализировать дату и получить список значений меньше заданной даты, упорядочить их по убыванию и получить первое. Я использую Robo3T для пользовательского интерфейса, и оттуда я могу запросить как
db.getCollection('myCollection').find({date:{"$lte":ISODate("2020-01-18T04:00:46Z")}}).sort({date:-1}).limit(1)
Это дает правильный результат. Но я не могу сделать это с кодом java, он дает пустой результат. Вот код java, который я использую.
MongoCollection<MyRegion> myCollection = database.getCollection('myCollection',MyRegion.class);
Bson queryOne = Filters.lte("date", DateTimeUtils.toISO8601UTC( date));
List<MyRegion> result = myCollection.find(queryOne).sort(Sorts.descending("date")).limit(1).into(new ArrayList<>());
Также пробовал и этот код,
MyRegion result = myCollection.find(queryOne).sort(Sorts.descending("date")).first();
Я новичок в запросе go, и я застрял. Пожалуйста, исправьте меня, где я сделал не так.