Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Costo dell'inventario first-in-first-out (FIFO).

Ti suggerisco di progettare la tua tabella come di seguito:Aggiungi un nuovo campo alla tua tabella, ovvero qty_out

Il tavolo prima della vendita:

Item transaction code    qty     qty_out  price   
 apple   IN                    5    0        10.00    
 apple   IN                    3    0        20.00   
 apple   OUT                   6    null

E il tavolo dopo aver venduto i 6 articoli:

Item    transaction code    qty     qty_out  price   
 apple   IN                    5    5        10.00    
 apple   IN                    3    1        20.00   
 apple   OUT                   6    null

Puoi confrontare "qty" con "qty_out" (per transazioni IN) per scoprire il prezzo.