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

Er det muligt at returnere et beregnet felt fra en MongoDB-forespørgsel?

Det nye Aggregation Framework i MongoDB 2.2 giver dig mulighed for at tilføje beregnede felter via $projektet operatør. Dette er ikke helt det samme som vilkårligt fungerer, fordi du skal bruge understøttede operatører , men det giver en god portion fleksibilitet.

Her er dit eksempel på at øge _id s ind i en ny myNum felt:

MongoDB shell version: 2.2.0-rc0

> db.test.insert({_id:123});

> db.test.insert({_id:456});

> db.test.aggregate(
  { $project : {
      _id : 1,
     'myNum': { $add: [ "$_id", 1]}
  }}
)
{
    "result" : [
        {
            "_id" : 123,
            "myNum" : 124
        },
        {
            "_id" : 456,
            "myNum" : 457
        }
    ],
    "ok" : 1
}



  1. Forespørg efter en bestemt dato med MongoDB og NodeJS

  2. Gemmer Mongoose-objekt i to samlinger

  3. MongoDB:Der opstod en timeout efter 30.000 ms valg af en server ved hjælp af CompositeServerSelector

  4. Mongodb samling med 2 samlinger