die folgende Sammlung Gegeben:Sortieren nach Subdokumente Felder in Mongo
[
{
name: User1
metadata: [
{k:"score", v: 5},
{k:"other", v: 10}
]
},
{
name: User2
metadata: [
{k:"score", v: 1},
{k:"other", v: 1}
]
},
{
name: User3
metadata: [
{k:"score", v: 2},
{k:"other", v: 0}
]
}
]
Wie können Sie diese Elemente durch ihre „score“ sortieren? Ich kann durch das metadata.v Feld sortieren, aber ich bin nicht sicher, wie man nur die „v“ Werte für Subdokumente zu betrachten, die „k“ entsprechen: „Score“
Die erwartete Ausgabe wäre:
[
{
name: User2
metadata: [
{k:"score", v: 1},
{k:"other", v: 1}
]
},
{
name: User3
metadata: [
{k:"score", v: 2},
{k:"other", v: 0}
]
},
{
name: User1
metadata: [
{k:"score", v: 5},
{k:"other", v: 10}
]
}
]
Es ist unklar, was Sie hier fragen. Bitte denken Sie daran, die erwartete Ausgabe zu Ihrer Frage hinzuzufügen. – styvane
Benötigen Sie die anderen 'metadata' Elemente in Ihrem Ergebnis (z. B. die' k: "other" 'Elemente)? – JohnnyHK
@JohnnyHK Ja, ich möchte alle Daten im Dokument haben. –