Чтобы выполнить текстовый поиск в MongoDB и отсортировать результаты по релевантности, тебе нужен текстовый индекс на коллекции и оператор $text в сочетании с $meta: "textScore".
db.articles.createIndex({ content: "text" })
Запрос состоит из трёх ключевых частей:
$text с $search для поиска совпадающих документов$meta: "textScore" для выделения оценки релевантности как отдельного поляdb.articles.find(
{ $text: { $search: "mongodb performance" } },
{ score: { $meta: "textScore" } }
).sort({ score: { $meta: "textScore" } })
$search "mongodb performance" соответствует документам, содержащим любое из слов — оберни в кавычки для точной фразы: "\"mongodb performance\""score произвольное — ты можешь назвать его как угодно.sort() результаты не гарантированно будут упорядочены по релевантностиПеред выполнением текстового поиска с использованием оператора $text необходимо создать текстовый индекс на коллекции.
Новый — ещё не проверен сообществом
Вы