Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Entfernen Sie Umkehrpaare mit SQL

Es stellte sich heraus, dass ich das Problem auf ziemlich schreckliche Weise betrachtete. Anstatt das genaue zu finden Umkehrpaar, ich habe gerade eine SUM mit einem GROUP BY gemacht, also blieben nur die Werte übrig, die ich behalten wollte.

Das Endergebnis ist, dass Transaktionen unterschiedlich ausfallen – besonders wenn, wie in meinem Fall, die echte Transaktionstabelle tatsächlich ein datetime-Wert anstelle von date ist.

SELECT SUM(QTY) AS newQTY, DATE, FUEL_TYPE
FROM fuel_transactions
GROUP BY DATE, FUEL_TYPE

Das einzige Mal, dass dies nicht die Werte erzeugt, die Sie wirklich wollen, ist, wenn Sie die IDs der Transaktionen pflegen müssen oder wenn Sie eine Situation haben, in der mehrere Transaktionen exakt auftreten gleichzeitig.