2016-09-15 1 views
0

C'est ce que je reçois maintenant:Coquille Mongo: comment afficher les champs d'un document dans l'ordre lexicographique?

> db.collection_name.findOne() 
{ 
    "_id" : ObjectId("whatever") 
    "c" : "a value" 
    "a" : "a value" 
    "b" : "a value" 
} 

Y at-il fonction que je pourrais utiliser pour que je puisse voir les champs du document dans l'ordre lexicographique (sur une découverte() ou findOne())? Je voudrais voir

> db.collection_name.findOne().something() 
{ 
    "_id" : ObjectId("whatever") 
    "a" : "a value" 
    "b" : "a value" 
    "c" : "a value" 
} 

Répondre

1

depuis un document JS est une carte associative

var d = db.collection_name.findOne() 
var sorted = {} 
var keys = Object.keys(d).sort() 
for (i = 0; i < keys.length; i++) { 
    key = keys[i]; 
    sorted[key] = d[key]; 
} 

, vous pouvez trier les clés et copier les champs commandés dans un nouveau document (sorted dans ce cas)

+0

D'accord, merci, mais n'y a-t-il pas de façon intégrée de le faire? – rwg05

+0

pas construit de manière (afaik) –