Mongodb typeorm mongo全文搜索排序相关

Mongodb typeorm mongo全文搜索排序相关,mongodb,full-text-search,typeorm,Mongodb,Full Text Search,Typeorm,我正在使用TypeForm连接mongodb, 是否支持对全文搜索mongodb返回的相关分数进行排序 从mongo开始,我想进行如下查询: db.todos.find( {$text: { $search: "coffee" }}, {score: { "$meta": "textScore" }}) .sort({score: { "$meta": "textScore" }}) .limit

我正在使用TypeForm连接mongodb, 是否支持对全文搜索mongodb返回的相关分数进行排序 从mongo开始,我想进行如下查询:

db.todos.find( {$text: { $search: "coffee" }}, {score: { "$meta": "textScore" }}) .sort({score: { "$meta": "textScore" }}) .limit(20);
如何从MongoRepository和TypeForm查询?
谢谢。

首先,我建议您查看更多信息

按单个或多个值对结果进行排序相当简单

以下面我试图重现您问题的代码片段为例:

从'typeorm'导入{getRepository,Like};
//Todos是实体类
从“/TODO”导入TODO;
const todos=wait getRepository(todos)。查找({
其中:{
text:Like(“%coffee%”),//在文本中搜索咖啡字符串模式
score:'textScore'//在score中搜索字符串textScore
},
订单:{
分数:“ASC”//按ASC顺序按分数排序
},
take:20//应获取的最大实体数
});

正如您在find options对象中看到的,我添加了一个sort子句,其中我按ASC顺序按分数对结果排序。

我已经测试了以下代码,它可以正常工作:

等待todoRepository.find({
其中:{
$text:{$search:'search query here'},
},
拍摄时间:20

});