Java實現Mongo巢狀查詢
阿新 • • 發佈:2018-12-24
我們可能都遇到過這樣的困擾,即如何巢狀查詢,舉個簡單的例子:
{
"_id" : ObjectId("56e8d3dee4b0c105488c3bfa"),
"_class" : "com.xx.xx",
"deviceId" : "aaaaa",
"deviceType" : 1,
"content" : "你好",
"businessType" : 1,
"payload" :
{
"from" : 111,
"type" : 1,
"page" : "1"
}
}
如果想根據deviceType查詢,則非常簡單:
Query query = new Query();
CriteriaDefinition criteriaDefinition = Criteria.where("deviceType").is(1);
query.addCriteria(criteriaDefinition);
但是如何根據payload中的from去查詢呢?其實也非常簡單:
Query query = new Query();
CriteriaDefinition criteriaDefinition = Criteria.where("payload.from" ).is(111);
query.addCriteria(criteriaDefinition);
看上去並不難吧?