sql >> Database >  >> RDS >> Oracle

Hoe voer ik de totalen uit de tweede kolom uit?

SQL Fiddle

Oracle 11g R2 Schema-instellingen :

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;

Query 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

Resultaten :

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


  1. Kunt u geaggregeerde waarden gebruiken binnen ON DUPLICATE KEY

  2. .NET SqlDependency met veel meldingen versus polling met hoge snelheid?

  3. Hoe werkt voor elke rij in triggers in mysql?

  4. Bereken delta (verschil van huidige en vorige rij) mysql-groep per specifieke kolom