Ich habe eine Dokumenten-Sammlung in cloudantCloudant: Filtern und Aggregation auf mehreren Ebenen
{
"id" : String
"state": String
"city": String
"zipcode": int
"productType": String
"make": String
"model": String
"sku": String
"usedOn": Date
"energyUSed": int
"durationUsed": int
}
Ich möchte auf mehreren Kriterien filtern - Staat, Stadt, Postleitzahl, Marke, Modell, sku etc und Aggregat energyUsed und durationUsed
Ich schaute auf Cloudant Abfrage mit Map/reduce, Abfrage Indizes und _find Ziel. Jedoch ist keines davon flexibel genug, um auf mehreren Ebenen zu filtern und zu aggregieren.
Zum Beispiel möchte ich basierend auf Marke und Modell filtern und aggregieren auf Zustand oder Stadt Ebene. In einem anderen Fall würde ich gerne nach Staat, Stadt, Marke und Modell filtern und auf Monatsebene aggregieren (usedOn).
Jede Hilfe wird sehr geschätzt.
Danke für die Kommentare. Vorausgesetzt, wir verwenden den obigen komplexen Schlüssel, müssen wir für die Filterung startKey und endKey verwenden. Das Problem ist, wenn ich Energie für alle make + -Modelle verwenden möchte, aber nach Zustand oder Stadt filtern möchte, kann ich keine Wildcards in startKey oder endKey wie startKey = [*, 'A', {}] und endKey = [ *, 'Z', {}]. Irgendwelche Gedanken oder Vorschläge werden geschätzt. – jaydeepva