对两个合并记录征收的平均税的数学确认

时间:2013-09-28 17:26:25

标签: .net vb.net math

我不确定我的数学并且正在寻找确认。

我想在数据库中记录两条记录,并将它们的值合并为一个平均值,并将该值保存在另一个表中。我对db操作没有任何问题。我只需要确保我的数学是正确的。

请注意,税率在SQL Server中存储为十进制值,因此5.5%存储为5.50(双重类型)

例如:

Record         Quantity         Unit Cost         Tax Rate    
Record 1:        10             $10.00              5%    
Record 2:        10             $10.00             10%

我目前正在做什么:

我将每个记录的总合并值(单位成本*数量)合并在一起

(10 * $ 10.00)+(10 * $ 10.00)= $ 200

然后我得到包含税的总金额

(100 * 1.05)+(100 * 1.1)= $ 215

然后我将总税收金额除以总值

215/200 = 1.075

我取下1,然后乘以100得到整个税率,如

(1.075 - 1)* 100 = 7.5%

所有在一起:

NewAveragedTaxRate = (((((Quanity1 * Unit1) * (tax1 / 100 + 1)) + ((Quanity2 * Unit2) * (tax2 / 100 + 1))) / ((Quanity1 * Unit1) + (Quanity2 * Unit2))) -1) * 100 

所以我认为我的税率为7.5%

问题:

  1. 这是对的吗,这种方法是有效的,但这是平均税/百分比的正确方法吗?
  2. 其次,有没有办法可以简化这一点,我觉得我过于复杂了。

1 个答案:

答案 0 :(得分:1)

是的,最后两个方程式是过度的。做(总计 - 总总额)/总计。在这个例子中,(215 - 200)/ 200 = 0.075 = 7.5%。