sql >> Databasteknik >  >> RDS >> Oracle

Hur gör jag löpande totaler från andra kolumnen

SQL Fiddle

Oracle 11g R2 Schema Setup :

CREATE TABLE lots ( Lot_Size, Reported_QTY ) AS
          SELECT 150, 100 FROM DUAL
UNION ALL SELECT 150, 100 FROM DUAL
UNION ALL SELECT 150,  80 FROM DUAL
UNION ALL SELECT 150,  80 FROM DUAL
UNION ALL SELECT 150,   5 FROM DUAL;

Fråga 1 :

SELECT Lot_Size,
       Reported_QTY,
       COALESCE( LAG( Reported_QTY ) OVER ( ORDER BY NULL ) - Reported_QTY,
                 Lot_Size - Reported_QTY ) AS Qty_Balance
FROM   Lots

Resultat :

| LOT_SIZE | REPORTED_QTY | QTY_BALANCE |
|----------|--------------|-------------|
|      150 |          100 |          50 |
|      150 |          100 |           0 |
|      150 |           80 |          20 |
|      150 |           80 |           0 |
|      150 |            5 |          75 |


  1. ORA-6502 med Grant Logging Trigger

  2. Beräkna avstånd mellan två punkter (latitud, longitud)

  3. Hur man väljer ett objekt, det nedan och det ovan i MYSQL

  4. Hur man korrekt anropar fnd_concurrent.wait_for_request lagrad funktion via cx_Oracle module API?