Gruppe in mongo ohne null-Werte

Habe ich mongo-Abfrage, die die Gruppe Betrieb auf die Dokumente.

Ich habe fast die erwarteten Ergebnisse, außer dass ich möchte, um die Ergebnisse zu verfeinern, ohne leer-oder null-Werte.

Derzeit meine Abfrage sieht wie folgt aus:

db.productMetadata.aggregate([{$group:{"_id":{"color":"$productAttribute.colour","gender":"$productAttribute.gender"},"count" : {$sum : 1}}}]);

Und die Ergebnisse sieht man hier:

{ "_id" : { "color" : "BLUE", "gender" : "MEN" }, "count" : 1 }
{ "_id" : {  }, "count" : 4 }
{ "_id" : { "color" : "NA", "gender" : "WOMEN" }, "count" : 1 }
{ "_id" : { "color" : "BLACK", "gender" : "MEN" }, "count" : 1 }
{ "_id" : { "color" : "BROWN", "gender" : "WOMEN" }, "count" : 1 }
{ "_id" : { "gender" : "MEN" }, "count" : 2 }
{ "_id" : { "color" : "BEIGE", "gender" : "MEN" }, "count" : 1 }
{ "_id" : { "color" : "BROWN", "gender" : "MEN" }, "count" : 1 }

Möchte ich um die Zeilen zu entfernen, wenn eine der group by-Feld Werte sind leer oder null, in den eigentlichen Daten der DB.

Vorbehalten Ergebnisse sollten wie folgt Aussehen:

{ "_id" : { "color" : "BLUE", "gender" : "MEN" }, "count" : 1 }
{ "_id" : { "color" : "NA", "gender" : "WOMEN" }, "count" : 1 }
{ "_id" : { "color" : "BLACK", "gender" : "MEN" }, "count" : 1 }
{ "_id" : { "color" : "BROWN", "gender" : "WOMEN" }, "count" : 1 }
{ "_id" : { "color" : "BEIGE", "gender" : "MEN" }, "count" : 1 }
{ "_id" : { "color" : "BROWN", "gender" : "MEN" }, "count" : 1 }
InformationsquelleAutor starkk92 | 2015-10-14
Schreibe einen Kommentar