Ich versuche, eine Liste der Anzahl der Datensätze zu erhalten, die Arrays unterschiedlicher Größe haben. Ich möchte die Verteilung der Array-Größen für alle Datensätze erhalten, damit ich ein Histogramm wie folgt erstellen kann:
%Vor%Die rohen Dokumente sehen also ungefähr so aus:
%Vor%Bisher habe ich das Aggregationsframework und einige hier verwendet hoch mit
%Vor%Dies scheint mir die Ergebnisse zu geben, die ich möchte, aber es ist nicht sehr schnell. Ich frage mich, ob es etwas gibt, das ich so machen kann, das nicht zwei Gruppenrufe benötigen. Die Syntax ist hier falsch, aber was ich versuche, ist, den Zählwert in das erste _id-Feld zu setzen:
%Vor% Nun, da 2.6 out ist, unterstützt das Aggregationsframework einen neuen Array-Operator $size
, die es dir erlauben, $project
der Array-Größe ohne Abwickeln und Neugruppieren zu verwenden.
Tags und Links mongodb aggregation-framework