Gegeben zu finden: ..MongoDB: Wie eine Sammlung wie diese ein Dokument durch eine ID innerhalb eines verschachtelten Dokuments
[
{
"_id" : ObjectId("5546329a470000850084a621"),
"name": "Joe",
"surname": "Smith",
"accounts": [
{
"_id" : ObjectId("5546329a470000850084a655"),
"default": true,
"status" : "approved",
"activationTime" : ISODate("2013-05-03T14:37:15.025Z")
},
{
"_id" : ObjectId("5546329a470000850084a688"),
"default": true,
"status" : "approved",
"activationTime" : ISODate("2014-06-03T14:37:15.025Z")
}
]
},
{
"_id" : ObjectId("9546329a470079850084a622"),
"name": "Jimmy",
"surname": "Brown",
"accounts": [
{
"_id" : ObjectId("5546329a470790850084a651"),
"default": true,
"status" : "suspended",
"activationTime" : ISODate("2015-02-03T14:37:15.025Z")
},
{
"_id" : ObjectId("5546329a470019850084a611"),
"default": true,
"status" : "approved",
"activationTime" : ISODate("2015-04-03T14:37:15.025Z")
}
]
},
]
... wie kann ich ein Dokument von accounts.N._id
finden? Ich habe schon versucht, diese ...
db.users.find(
{},
{
"accounts": 0, "accounts": {
"$elemMatch": { "_id" : ObjectId("5546329a470019850084a611"), "default": true }
}
}
)
... aber es does't Arbeit, da ich nur die _id
aller Dokumente erhalten:
{ "_id" : ObjectId("5546329a470000850084a621") }
{ "_id" : ObjectId("9546329a470079850084a622") }
Bin ich etwas fehlt?
EDIT
Das Ergebnis, das ich tatsächlich so etwas wie dieses brauchen, ist:
{
"_id" : ObjectId("9546329a470079850084a622"),
"name": "Jimmy",
"surname": "Brown"
}
Zum Beispiel, ich brauche von accounts.N._id
zu finden, aber ohne das verschachtelte Dokument zeigt sich.
Thank you very much ... Ich will nicht das verschachtelte Dokument zeigen ... meine aktualisierte Post sehen. – j3d
@ j3d sehe meine aktualisierte Antwort –