Поделиться через


ORDER BY RANK (запрос NoSQL)

ОБЛАСТЬ ПРИМЕНЕНИЯ: NoSQL

Необязательное ORDER BY RANK предложение сортирует функции оценки по их рангу. Он используется специально для функций оценки, таких как VectorDistance, FullTextScoreи RRF.

Синтаксис

ORDER BY RANK <scoring function>

Аргументы

Description
<scoring function> Задает функцию оценки, например VectorDistanceFullTextScore, или RRF.

Примечание.

Дополнительные сведения о скалярных выражениях см . в скалярных выражениях.

Примеры

Это простой пример, показывающий, как использовать FullTextScore для ORDER BY RANK сортировки от высокой релевантности до наименьшей релевантности.

SELECT TOP 10 c.text
FROM c
ORDER BY RANK FullTextScore(c.text, ["keyword"])

В следующем примере показано использование RRF предложения ORDER BY RANK для объединения VectorDistance показателей сходства с FullTextScore оценками BM25 для выполнения гибридного поиска

SELECT TOP 10 c.text
FROM c
WHERE FullTextContains(c.text, "keyword1")
ORDER BY RANK RRF(FullTextScore(c.text, ["keyword1", "keyword2"]), VectorDistance(c.vector, [1,2,3]))

Замечания

  • Для этой функции требуется регистрация в предварительной версии полнотекстового поиска Azure Cosmos DB NoSQL
  • Для этой функции требуется полнотекстовый индекс
  • Для гибридного поиска также требуется регистрация в поиске вектора NoSQL в Azure Cosmos DB