sql >> Database >  >> NoSQL >> MongoDB

Project met Match in totaal werkt niet in mongodb

Je bent vergeten de velden te projecteren die je gebruikt in $match en $group later. Gebruik in plaats daarvan deze zoekopdracht voor een snelle oplossing:

Offer.aggregate([
{
    $project: {
        myyear: { $year: "$ending_date" },
        carer_id: 1,
        status: 1,
        ending_date: 1
    }
},
{ 
    $match: { 
        carer_id: req.params.carer_id,
        myyear: 2015,
        status: 3
    }
},
{
    $group: {
        _id: {
            year: { $year: "$ending_date" },
            month: { $month: "$ending_date" }
        }, 
        count: { $sum: 1 }
    }
}], 
function (err, res)
{
    if (err) {} // TODO handle error 
    console.log(res); 
});

Dat gezegd hebbende, Blakes Seven legde in haar antwoord uit hoe ze een betere vraag kon stellen. Ik denk dat je in plaats daarvan haar aanpak moet proberen te gebruiken.



  1. MongoDB $rtrim

  2. Overslaan/Mock Redis In Junit

  3. mongodb zoeken door meerdere array-items

  4. Busfout op Mongodb MongoClient.connect() voor Raspberry Pi ARM