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

Hvordan sorteres array inde i samlingsposten i MongoDB?

Du bliver nødt til at manipulere det indlejrede array i din applikationskode eller bruge det nye Aggregation Framework i MongoDB 2.2.

Eksempel på aggregering i mongo skal:

db.students.aggregate(
    // Initial document match (uses index, if a suitable one is available)
    { $match: {
        _id : 1
    }},

    // Expand the scores array into a stream of documents
    { $unwind: '$scores' },

    // Filter to 'homework' scores 
    { $match: {
        'scores.type': 'homework'
    }},

    // Sort in descending order
    { $sort: {
        'scores.score': -1
    }}
)

Eksempeloutput:

{
    "result" : [
        {
            "_id" : 1,
            "name" : "Aurelia Menendez",
            "scores" : {
                "type" : "homework",
                "score" : 71.76133439165544
            }
        },
        {
            "_id" : 1,
            "name" : "Aurelia Menendez",
            "scores" : {
                "type" : "homework",
                "score" : 34.85718117893772
            }
        }
    ],
    "ok" : 1
}


  1. MongoDB-CR-godkendelse mislykkedes

  2. Gensøg den samlede returnerede top 5 i hver gruppe

  3. Hvad er forskellen mellem area og BoundingBox fra Redis's kildekode

  4. Sådan bruges Memcached With Yii2 Framework