sql >> Database teknologi >  >> RDS >> Oracle

Fjern reverseringspar ved hjælp af SQL

Det viser sig, at jeg så på problemet på en ret forfærdelig måde. I stedet for at finde den nøjagtige vendepar, jeg lavede lige en SUM med en GROUP BY, så kun de værdier, som jeg brød mig om at beholde, var tilbage.

Slutresultatet er, at transaktioner vil ende med at være særskilte - især hvis, som i mit tilfælde, den rigtige transaktionstabel faktisk er en datetime-værdi i stedet for dato.

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

Den eneste gang dette ikke giver de værdier, du virkelig ønsker, er, hvis du har behov for at vedligeholde transaktionernes id'er, eller hvis du har en situation, hvor flere transaktioner forekommer på nøjagtig samme tid.



  1. Returner dynamisk tabel med ukendte kolonner fra PL/pgSQL-funktionen

  2. Indlejrede transaktioner i SQL Server

  3. Sådan installeres Apache Cassandra på Ubuntu 20.10/Ubuntu 20.04

  4. Hvordan passerer man den nuværende rækkeværdi i modal?