我有一张表,其记录包含次要库存。我需要将这些记录的成本相加,并根据记录的价格在另一个表中分配总和。例如。比如说库存的总和是1000美元,而另一张表中我有4个工作。
*table 2* *table 1*
**job# amount InvAmnt** **item# cost**
job1 $100,000 - 1 $250
job2 $50,000 - 2 $150
job3 $25,000 - 3 $100
job4 $25,000 - 4 $500
我需要根据表2中金额的值对表1中的所有内容求和。因此,总和的50%将转到job1,25%的总和将转到job2,12.5%的总和会去job3和job4。所以决赛桌应该是这样的:
*table 2*
**job# amount InvAmnt**
job1 $100,000 $500
job2 $50,000 $250
job3 $25,000 $125
job4 $25,000 $125
我该如何做到这一点?
答案 0 :(得分:1)
您可以汇总每个表格中的项目以获得总金额,然后将汇总结果交叉加入table2
:
UPDATE table2
SET InvAmnt = sum1 * InvAmnt / sum2
FROM table2
CROSS JOIN (SELECT SUM(cost) AS sum1 FROM table1) t
CROSS JOIN (SELECT SUM(InvAmnt) AS sum2 FROM table2) s