MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

MongoDB - MySQL SUM (CASE WHEN) Äquivalent?

Ich würde Rudu hier zustimmen, da Sie versuchen sollten, die Details in Schlüssel eines Mongo-Dokuments zu zerlegen.

Das Dokument könnte ein Objekt wie dieses enthalten:

details:
{
  viewed: true
  thumb_view: true
  web_viewed: false
  exported: true
  ...
}

Wenn Sie die Daten nicht umstrukturieren, erfordert die Abfrage nicht gerootete reguläre Ausdrücke, die die Indizierungsfunktionen von MongoDB nicht verwenden können.

Unabhängig davon, ob Sie sich dafür entscheiden oder nicht, werden Sie dafür Map Reduce verwenden wollen. Sie könnten Elemente ausgeben, die die Details während der Zuordnung enthalten (entweder indem Sie sie mit regulären Ausdrücken verarbeiten oder einfach die Schlüssel in umstrukturierter Form ausgeben) und sie in der Reduzierungsphase summieren.

Sie können mehr darüber in den Dokumenten lesen