sql >> Databáze >  >> NoSQL >> MongoDB

Operátor $arrayElemAt v agregaci s Mongo <3.2

Budete muset $unwind , $group a použijte $first a $last operátory jako tento:

db.collection.aggregate([
    { "$unwind": "$favorites" },
    { "$group": { 
        "_id": "$_id",
        "first": { "$first": "$favorites" },
        "last": { "$last": "$favorites" }
    }}
])

Nebo dva různé dotazy, pokud $unwind je drahý

var first = db.collection.find({}, {"favorites": { $slice: 1}})
var last = db.collection.find({}, {"favorites": { $slice: -1}})



  1. Mongoid::Versioning - jak zkontrolovat předchozí verze?

  2. MongoDB - DBRef

  3. Jak mohu aktualizovat jeden dokument ve vnořeném poli

  4. MongoDB $strcasecmp