В настоящее время мне не удается создать запрос mongoDB, который сначала использует сортировку, а затем выводит одну выборку.Документы в базе данных выглядят так:
{
"_id" : "cynthia",
"crawled" : false,
"priority" : 2.0
}
Я пытаюсь добиться следующего: получить один случайный элемент с наивысшим приоритетом.
Я проверил его с помощью следующего запроса:
db.getCollection('profiles').aggregate([
{$match: {crawled: false }},
{$sort: {priority: -1}},
{$sample: {size: 1}}
])
К сожалению, это не работает.Монго, кажется, полностью игнорирует $sort
.Я не вижу разницы между использованием с $sort
или нет.
Кто-нибудь с большим опытом работы с mongoDB имеет представление об этом?Если у вас есть идея о лучшей реализации функции «приоритет», просто скажите мне.
Каждая идея высоко ценится.