Ich versuche, Mongo-Aggregation-Framework zu verwenden, um eine Sammlung basierend auf einem Zeitstempel zu gruppieren und $ out zu verwenden, um es in einer neuen Sammlung auszugeben. Entschuldigt, ich bin neuGruppendokumente nach Filialdokumentenfeld
Ich habe die folgende JSON Struktur in meiner Sammlung
{
"_id" : "1",
"parent" : [
{
"child" : {
"child_id" : "1",
"timestamp" : ISODate("2010-01-08T17:49:39.814Z")
}
}
]
}
hier Mongo ist das, was ich habe
db.mycollection.aggregate([
{ $project: { child_id: '$parent.child.child_id', timestamp: '$parent.child.timestamp' }},
{ $group: { cid: '$child_id', ts: { $max: '$timestmap'} }},
{ $out : 'mycollectiongrouped'}
]))
jedoch versucht, diese Fehler. Irgendwelche Ideen, ich nehme an, dass ich das Projekt wahrscheinlich falsch benutze.
[thread1] Error: command failed: { "ok" : 0, "errmsg" : "the group aggregate field 'cid' must be defined as an expression inside an object", "code" : 15951 } : aggregate failed : [email protected]/mongo/shell/utils.js:25:13
Ihnen fehlt das Feld '_id'. Außerdem sollten Sie ein gültiges Datumsobjekt verwenden. – styvane
danke. bezüglich des validate Datumsobjekts verwende ich ISODate(). Will die Frage entsprechend bearbeiten –
Ist das "Eltern" -Feld immer ein Element-Array? Was ist deine 'Mongod' Version? – styvane