Was ich versuche, ist ein SUM-Fall erstellen, wie eine Summe in Excel. Welche ich in R ziehen werde, um weitere Analyse zu machen, aber ich dachte, es wäre schneller, diese Abfrage einmal in MySQL auszuführen und in R zu ziehen.Sumifs SQL-Tabelle Match Row Wert
Also in Excel funktioniert es mit =SUMIFS(I:I,H:H,"Shipping",G:G,G7,F:F, F7)
(diese Formel ist in der "total_cost" Spalte.
Wo Spalte H die process
ist, ist G die order_no
, und F die parent_name
der Teil ich bin nicht sicher, ist, wie der Zeilenwert G7 unter dem gesamten Bereich & F7 anzupassen (oder selbst wenn das effizient ist, wenn man bedenkt, dass diese kleine db einige Millionen Zeilen * 45 Spalten hat, würde in diesem Beispiel die total_cost-Spalte ausgefüllt Mn für diese Zelle.
Also unten versuche ich die Gesamtkosten der Bestellungen pro Bestellnummer pro Elternteil zu bekommen. Alle Bestellungen haben Prozesse in ihnen (Kompilieren, Verpacken, Versand) mit Versand als das Ende. In der Spalte "total_cost" werden dann alle Kosten für die aktuellen Zeilen order_no
und parent_name
addiert, wenn der Prozess = Versand ist.
Ich bekomme eine "ungültige Verwendung der Gruppenfunktion" mit den folgenden. Ich habe versucht, This SUMIFS in SQL Post folgen, aber kann nicht scheinen, die GROUP BY
in Arbeit zu passen.
UPDATE m.data
set total_cost =
IF(process = 'Shipping',
SUM(case when order_no = order_no
AND parent_name = parent_name
THEN sum(process_cost) else 0 END), "")
Oder lassen Sie mich wissen, wenn Sie einen besseren Weg natürlich haben.
Siehe https://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve- for-was-scheint-zu-mir-eine-sehr-einfache-sql-Abfrage – Strawberry