我正在尝试在Mongo集合中搜索关键字,但结果未根据其排名进行排序..所以在找到匹配后,我使用下面的代码按textcore排序 在java代码中,我正在编写
Aggregates.project(Projections.metaTextScore("textScore"))
Aggregates.sort(Sorts.metaTextScore("textScore"))
我收到错误"管道需要文本分数元数据,但没有可用的文本分数"
我在这个领域创建了一个文本索引..如果你能指出我正确的方向,请欣赏。
public Document find(Map<String,String> params){
ProcessRequest request = new ProcessRequest();
request.parseSearch(params);
MongoCollection<Document> mcollection = mconfig.getRecordCollection();
long count = mcollection.count(request.getFilter());
logger.info("Count :"+count);
AggregateIterable<Document> aggre = null;
try{
aggre = mcollection.aggregate(request.getQueryList());
}
catch(Exception e){
logger.info(e.getMessage());
}
Document resultDoc = new Document();
resultDoc.put("ResultCount", count);
resultDoc.put("PageSize", request.getPageSize());
resultDoc.put("ResultData",aggre);
return resultDoc;
}
由于 SK
答案 0 :(得分:0)
由于我已经在投影中添加了文本核心,因此只显示了文本核心...注释了所有字段的投影