MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Possibile query con MongoDB

Usa $and :

db.getCollection('collection_name').find({
$and: [{
  TitleData: {
    $elemMatch: {
      UserId: ObjectId("57a87f5cc48933119cb96f9b"),
      UserId: ObjectId("57a87f5cc48933119cb96fa7")
    }
  }
}, {
  TitleData: {
    $elemMatch: {
      $ne: {
        "Res": 2
      }
    }
  }
}]
}));

Prova l'output dalla console con gli oggetti della tua raccolta:

> db.collection.find({ $and: [{     TitleData: {       $elemMatch: {         UserId: ObjectId("57a87f5cc48933119cb96f9b"),          UserId: ObjectId("57a87f5cc48933119cb96fa7")       }     }   },{ TitleData: { $elemMatch: { $ne: { "Res": 2 } } }}]});
{ "_id" : ObjectId("57a8a6c3c48933256cfd8368"), "Title" : "T1", "TitleData" : [     {   "UserId" : ObjectId("57a87f5cc48933119cb96f9b"),    "Res" : 2 },    {   "UserId" : ObjectId("57a87f5cc48933119cb96fa7"),    "Res" : 2 },    {   "UserId" : ObjectId("57a87f5cc48933119cb96f96"),    "Res" : 2 },    {   "UserId" : ObjectId("57a87f5cc48933119cb96f9c"),    "Res" : 2 },    {   "UserId" : ObjectId("57a87f5cc48933119cb96f9d"),    "Res" : 0 } ] }

MODIFICA Non è stato aggiunto tutto l'output della console...