Gibt eingebettete Dokumente in der Abfrage zurück

8

Ist es möglich, eine Abfrage durchzuführen und die eingebetteten Dokumente zurückzugeben?

Momentan habe ich:

%Vor%

Hier ist eine Abfrage, die fast da ist:

%Vor%

Dies wird alle Post-Objekte, aber nicht die Kommentare zurückgeben. Ich denke, ich könnte etwas tun wie:

%Vor%

Aber das würde alle Kommentare aus den Beiträgen zurückgeben. Ich möchte alle Kommentare erhalten, die diese Bedingung erfüllen. Vielleicht sollte Comment nicht eingebettet sein.

    
vrish88 28.02.2010, 00:28
quelle

1 Antwort

5

Ich nehme an, Sie suchen nach allen Kommentaren, die neuer sind als vor drei Tagen? Da Ihre Kommentare nur eingebettete Dokumente sind, existieren sie nicht ohne das Post-Objekt, so dass es keine Möglichkeit gibt, sie separat "abzufragen" (dies ist eigentlich ein zukünftige Funktion von MongoDB ). Sie können jedoch eine bequeme Methode hinzufügen, um Ihnen zu helfen:

%Vor%

Mit dieser Methode erhalten Sie alle Kommentare, die in den letzten drei Tagen aktualisiert wurden, aber sie sind nicht vollständig in Ordnung. Eine bessere Lösung könnte darin bestehen, Map / Reduce zu verwenden, um die letzten Kommentare abzurufen:

%Vor%

Vorbehalt: Der obige Code ist völlig ungeprüft und existiert nur als Beispiel, aber theoretisch sollten alle Kommentare der letzten drei Tage in absteigender Reihenfolge zurückgegeben werden.

    
Michael Bleigh 28.02.2010 08:20
quelle