Mongo Durchschnittliche aggregation-Abfrage ohne group

Ich versuche, die durchschnittlich ein ganzes Feld mit dem aggregation framework in Mongo. Allerdings kann ich nicht scheinen zu finden, ein beliebiges Beispiel, das es verwendet, ohne eine Gruppe parameter.

Habe ich das folgende Dokument Struktur:

 {
      "_id" : ObjectId("5352703b61d2739b2ea44e4d"),
      "Semana" : "2014-02-23 - 2014-03-01",
      "bolsaDeValores" : "7",
      "bvc" : "8",
      "dollar" : "76",
      "ecopetrol" : "51",
      "dollarPrice" : "18"
 }

Grundsätzlich, was ich will zu tun ist, erhalten den durchschnittlichen Wert der bvc-Feld, und jede andere numerische, für die ganze Sammlung, in der schnellsten möglichen Weise (ohne Verwendung von MapReduce, wie es ist weniger effizient als die Aggregation Framework).

Ich habe versucht, die Gruppe auf, der größer ist als null-basis, aber ohne Erfolg:

db.EvaluatedSentiments.aggregate([
    { "$group": { 
        "bvc" : {"$gt:0"}
        }, 
        {
            "bvc" : { "$avg" : "$bvc"}
        }
    }
])

Ich Schätze jede Hilfe, die Sie bieten könnte.

Referenzen: Mongo aggregation Handbuch

  • Gruppe durch null statt
  • Sie tun eigentlich klar, dass keiner der Werte, die Sie präsentieren, sind eigentlich numerisch, nicht wahr? Sie sind in der Tat alle Saiten.
  • Das ist sehr wahr, ich hatte nicht erkannt, dass über es, eine Unterlassung, die ich gemacht, während die Speicherung der Werte. Dank
InformationsquelleAutor NicolasZ | 2014-04-27
Schreibe einen Kommentar