Oracle
 sql >> Base de données >  >> RDS >> Oracle

Supprimer les paires d'inversion à l'aide de SQL

Il s'avère que je regardais le problème d'une manière assez terrible. Au lieu de trouver le exact paire d'inversion, je viens de faire une SUM avec un GROUP BY, donc seules les valeurs que je tenais à conserver sont restées.

Le résultat final est que les transactions finiront par être distinctes - surtout si, comme dans mon cas, la vraie table de transactions est en fait une valeur datetime au lieu d'une date.

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

La seule fois où cela ne produira pas les valeurs que vous voulez vraiment, c'est si vous avez besoin de conserver les identifiants des transactions, ou si vous avez une situation dans laquelle plusieurs transactions se produisent à la exact en même temps.