Mongodb typeorm mongo全文搜索排序相关
我正在使用TypeForm连接mongodb, 是否支持对全文搜索mongodb返回的相关分数进行排序 从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
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
});对不起,我不明白你想达到什么目的。是否要按分数值对返回值进行排序?用简单的话解释一下你想从TypeORM中得到什么,这样我们就可以帮助你:)是的,我想根据TypeORM的分数对返回值进行排序