我正在使用mongo spring从mongoDB获取数据。我在mongodb中的文档如下所示
connection reset
我试图根据searchKeywordScore的降序对结果进行排序,以使searchKeywordScore的最高值排在第一位,这样我只想获得前10条记录。
所以我尝试如下
{
"_id":"993208_1",
"clientId":"1",
"searchQueryAnalysisObj":[
{
"searchKeyword":"coat",
"searchKeywordScore":0.7,
"searchAnalysisModifiedDate": ISODate("2018-08-20T11:53:08.228Z")
},
{
"searchKeyword":"wire",
"searchKeywordScore":1.2,
"searchAnalysisModifiedDate": ISODate("2018-09-20T11:53:08.228Z")
}
],
"_class":"com.client.model.MainClickStreamData"
}
但是它没有用,然后我尝试更改
新订单(Direction.DESC, “ searchQueryAnalysisObj.searchKeywordScore”))));
但是结果仍然不是按顺序排列的,任何人都可以帮助我解决这个问题吗?
谢谢, Navneet
答案 0 :(得分:0)
我已经解决了这个问题-
Query clientData = new Query(Criteria.where("clientId").is(clientId));
clientData.with(new Sort(Direction.DESC, "searchQueryAnalysisObj.searchKeywordScore"));
clientData.limit(10);