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

Sådan hentes forskellige nøgler inde i et objekt i MongoDB

Du kan bruge den nye $objectToArrray i 3.4.4 version for at konvertere alle nøgle- og værdipar til dokumentarrays efterfulgt af $unwind &$group med $addToSet for at få forskellige nøgler

db.collection.aggregate([{$project: {indexation: {$objectToArray: "$indexation"}}}, {$unwind:"$indexation"}, {$group:{_id:null, keys:{$addToSet:"$indexation.k"}}}])

For en lavere version skal du opdatere indexation at se ud som nedenfor og og bruge

db.collection.distinct("indexation.k")

 { "_id" : ObjectId("58fb35531eb5df245d5d434f"), "name" : "d1.html", "indexation" : [{ "k" : "Citroen", "v" : 1 }, { "k" : "Marca", "v" : 1 }]}



  1. Redis - Sorteret sæt, find vare efter egenskabsværdi

  2. Overskriv objekt i mongodb

  3. Jeg får fejlen Klasse 'Predis\Client' ikke fundet i Laravel 5.2

  4. Regulært udtryk Spring data mongodb repositories