我有一个包含以下内容的佣金表:
Lower Upper Percentage
0 300 45
300.01 800 50
800.01 1500 55
上下金额是货币价值,我需要使用与总销售额相关的百分比金额,根据总销售额计算累计支付金额。
如果我的总销售额为 350,我的佣金应计算如下:
总数中的前 300 个将使用 45%,其余 50 个将使用 50%,所以我的总数将是
300*45% = 135
50*50% = 25
Total = 160
我正在通过 sproc 更新带有金额的表格,因此需要在其中容纳此内容。
最好的方法是什么?
注意:下面的 sproc 具有正确的列名,如上面的示例,为简单起见,我更改了列名。SPROC还加入了存储bands的表,更新表是一种工作/报告表
编辑:存储过程更新部分:
UPDATE CommissionCalculationDetails
SET TotalCommissionAmount =
case
when TotalSales > Upper then Upper
when TotalSale > Lower then @sales - Lower
else 0
end
* Percentage / 100
FROM CommissionCalculationDetails
LEFT JOIN CommissionBand
ON TotalSales > CommissionBand.Lower
AND TotalSales < CommisionBand.Upper