2016-06-23 7 views
0

Учитывая коллекцию MongoDB, содержащее следующее:Как использовать elemmatch в в mongojack в Java

{ 
"_id" : ObjectId("561c04bde4b05625eaaaf691"), 
"groupName" : "Group1", 
"Rights" : [ 
    "RIGHTS_1", 
    "RIGHTS_2" 
], 
"users" : [ 
    "User 1" 
]} 


,{ 
    "_id" : ObjectId("561c04bde4b05625eaaaf692"), 
    "groupName" : "Group2", 
    "Rights" : [ 
     "RIGHTS_3", 
     "RIGHTS_4" 
    ], 
    "users" : [ 
     "User 2" 
]} 

У меня есть запрос, как этот

db.collection.find({Rights:{$elemMatch:{$eq:"RIGHTS_1"}}}) 

, ища группы, обладающие права соответствия RIGHTS_1 ,

Однако, я не знаю, как написать эквивалентный запрос с использованием MongoJack, так как в MongoJack, у меня есть что-то вроде

DBQuery.elemMatch(collection.RIGHTS_FIELD, DBQUERY_GOES_HERE)) 

но DBQuery должны иметь поле и значение, и не кажется для проверки равенства внутри массива. Я проверил другие сообщения и документацию, но я не мог найти решение. Поддерживается ли этот запрос в MongoJack? Я ценю помощь!

ответ

0

Я был действительно немым.

db.collection.find({Rights:{$eq:"RIGHTS_1"}}}) 

является достаточным запрос и легко реализовать