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

Først-ind-først-ud (FIFO) lagerkalkulation

Jeg foreslår at designe din tabel som nedenfor:Tilføj et nyt felt til din tabel, dvs. qty_out

Tabellen før salg:

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

Og bordet efter at have solgt de 6 varer:

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

Du kan sammenligne "qty" med "qty_out" (for IN-transaktioner) for at finde ud af prisen.



  1. Mysql inkonsekvent antal rækker count(*) vs table.table_rows i informationsskema

  2. Tilsidesæt Query Optimizer til dine T-SQL-joins med FORCEPLAN

  3. indsæt værdier fra en rulleliste til databasetabel

  4. Implementering af inkrementel belastning ved hjælp af Change Data Capture i SQL Server