MySQL库存/库存平均成本核算

时间:2016-07-03 16:14:37

标签: c# mysql

我有一个名为“条目”的表格,我保存每日销售和购买交易/条目。 “条目”表格如下:

---参赛表---

EntryDate    EntryType    Item    Qty    Rate    Cost    Sale
2016-01-01   Purchase     Apples  10     10      100     -
2016-01-02   Purchase     Apples  20     15      300     -
2016-01-02   Purchase     Oranges 20     15      300     -
2016-01-02   Sale         Apples  5      20      **      100
....
....

现在,我需要运行一个查询更新上表中的[cost]列,其中[EntryType]为'Sale'。成本将使用加权平均法计算,即当前销售行成本=总和(所有先前的购买成本 - 所有先前[计算的]销售成本)/总和(所有先前的购买数量 - 所有先前的销售数量)。

我需要更新查询

 update entires set ...

1 个答案:

答案 0 :(得分:0)

只是为了确保我做对了,

Cost = (Sum of cost previous purchases -Sum of cost previous sales)/(sum of qty previous purchases -Sum of qty previous sales)

好的拳头我喜欢做一个小建议,让每个人的生活变得轻松。您需要将一种类型记录为否定。假设您将购买标记为负数(包括成本和数量)

EntryDate    EntryType    Item    Qty    Rate    Cost    Sale
2016-01-01   Purchase     Apples  -10     10      -100     -
2016-01-02   Purchase     Apples  -20     15      -300     -
2016-01-02   Purchase     Oranges -20     15      -300     -
2016-01-02   Sale         Apples  5      20      **      100
....
....

现在循环遍历每个销售行并在查询下方运行(希望有一个有助于识别订单的ID列):

Cost = SELECT SUM(`ID`)/SUM(`TaxID`) FROM category  WHERE `TaxID` < currentID

使用此和更新费用