sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur kombinerar jag två $and-satser i en $or-sats i mongodb?

Svaret borde vara ungefär så här:

db.collection('messages', function (err, collection) {
    collection.find(
        { 
        $or : [         
            {$and: [{
                receiver: new BSON.ObjectID(req.user._id)
            }, {
                sender: new BSON.ObjectID(req.body.sender)
            }]},
            {$and: [{
                receiver: new BSON.ObjectID(req.body.sender)
            }, {
                sender: new BSON.ObjectID(req.user._id)
            }]},
        ]
        }
    ).sort({
        date: -1
    }).toArray(function (err, docs) {
        console.log(docs);
    })
});


  1. vänta på att alla löften ska avslutas i nodejs med bluebird

  2. Hur kan jag använda MongoDB-drivrutinen med C# ASP.NET Core API-ramverket?

  3. MongoDB-relationer:inbädda eller referens?

  4. Ska jag använda Java String Pool för synkronisering baserat på unikt kund-id?