2017-08-03 4 views
0

Ich habe eine Datenbank, in der ich Dokumente wie Kunden (customerId, firstName, lastName, phoneNo, eMail) und Rechnung (rechnungsId, invoiceDate, customerId) habe.Gesamte Rechnungen pro Kunde erhalten

Ich möchte die Summe der Rechnungen pro Kunde in einer Ansicht erhalten. Ich benutze derzeit Fauxton 2.0.

Meine Ansicht ist zur Zeit:

function (doc) { 
    if (doc.customerId && doc.invoiceId) { 
     emit(doc.customerId, doc.invoiceId); 
    } 
} 

Aber ich möchte eine Art hinzufügen von Funktion zu reduzieren, die mir die Gesamtsumme der Rechnungen geben kann.

danke.

+0

Wo ist Ihr Versuch? Welche Probleme haben Sie? – Flimzy

+0

Nun meine Karte ist Funktion (doc) {emit (doc._id, {customerId: doc.customerId, Rechnungs-ID: doc.invoiceId})} - und dann tippe ich in meinen Browser http: // localhost: 5984/Zuweisung/_design/view5320/_view/sumofinv? key = "Die ID des ersten Kunden" - und dann bekomme ich überhaupt keine Zeilen mehr. Ich habe auch das _sum in meiner mapreduce Funktion hinzugefügt. – jsvi

+0

Nun, ich löste das Problem, es war nur ein Problem, die Reduzierungsfunktion _sum zu _count zu ändern, um die Gesamtmenge der Rechnungen zu erhalten. Also, wenn ich den Schlüssel (customerId) anfordere, bekomme ich die Zählung. – jsvi

Antwort

0

Nun, ich löste das Problem, es war nur ein Problem, die Reduce-Funktion _sum zu _count zu ändern, um die Gesamtmenge der Rechnungen zu erhalten. Also, wenn ich den Schlüssel (customerId) anfordere, bekomme ich die Zählung.

Verwandte Themen