mongoDB правильная команда find () - PullRequest
0 голосов
/ 28 июня 2018

У меня есть коллекция, в которой объекты выглядят так:

{
  "_id":ObjectId(""),
  "payload":{
  "roles":[
     {
        "contract_part":"1111",
        "role_key":"",
        "party_key":"29-29",
        "address_key":null,
        "changed_at":"2017-07-18T18:30:00",
        "changed_nr":NumberLong(1),
        "type":NumberLong(33),
        "contract_key":"999",
        "business_to":"2999-01-01T00:00:00",
        "business_from":"2017-07-18T18:30:00"
     }
  ]
},
   "id":NumberLong("10345"),
   "event":"role.created",
   "aggregate":"role",
   "timestamp":"2017-07-18T21:30:00.000+03:00"
}

И я борюсь с созданием db.collection.find(), который позволит мне найти объект с определенным "role_key".

1 Ответ

0 голосов
/ 28 июня 2018

Попробуйте использовать это

db.collection.find({"payload.roles": {$elemMatch: {role_key:" "}}})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...