Je voudrais retourner les documents dans un ordre trié par qui contient la valeur la plus basse foo.bar
(qui sont des objets de tableau).Mongodb: trier les documents par objets de tableau
Je peux faire db.collection.find().sort({foo.0.bar: 1})
, mais cela ne correspond qu'au premier élément du tableau - et comme vous pouvez le voir dans l'exemple ci-dessous, je vais trier l'item 1 en premier (foo.0.bar = 5), où je cherche à revenir article 2 premier (foo.2.bar = 4)
car il a l'objet avec la plus faible valeur.
{
"name": "Item 1",
"foo": [
{
"bar": 5
},
{
"bar": 6
},
{
"bar": 7
}
]
}
{
"name": "item 2",
"foo": [
{
"bar": 6
},
{
"bar": 5
},
{
"bar": 4
}
]
}
db.collection.find() sort ({foo.bar: 1}). – Troglo