Consulta que sume y reste valores SQL Oracle

Estaba intentando hacer una consulta que sume y reste valores: por ejemplo

+------+--------+
| id   | ventas |
+------+--------+-
|    2 | 20000   |
|    2 | 30000   |
|    3 | 40000   | 
+------+--------+|

Tengo la siguiente tabla, por el que tengo el id de la transacción y ahi puedo diferenciar si una transacción es venta o compra o devolución, lo que tengo es una consulta que me lista todas las compras con ciertos parámetros

SELECT item,
    store,
   round(MAX(unit_cost/1.18),4) AS Compra_S,
    SUM (units)                                  AS Compra_Und
  FROM fem_fif_stg
  WHERE tran_date BETWEEN
      ( SELECT TRUNC(sysdate-1,'iw') FROM DUAL)
  AND(  SELECT (TRUNC(sysdate-1,'iw')+6) FROM DUAL)
  GROUP BY item,
    store

Lo que deseo es a esta consulta filtrarla por código de transacción, que los del código de transacción 1(ventas totales), se resten los códigos de transacción 4(devoluciones).

Estoy un poco perdido, ayudaaaaaa :(

Añade tu respuesta

Haz clic para o