从Excel到MYSQL的SUMPRODUCT滑动费率佣金计算

时间:2016-08-30 22:11:17

标签: mysql excel

我在excel / googlesheet中有一个滑动佣金率计算我试图移植到MYSQL / PHP

我在B3范围内有这个表:E9(excel / google sheet)

+---+----------+-----------+-----------+----------+
| A |    B     |     C     |     D     |    E     |
+---+----------+-----------+-----------+----------+
| 3 | Tier Min | Tier Max  | Com. Rate | Dif Rate |
| 4 | 0        | 50,000    | 10.00%    | 0.10     |
| 5 | 50,000   | 100,000   | 15.00%    | 0.05     |
| 6 | 100,000  | 200,000   | 20.00%    | 0.05     |
| 7 | 200,000  | 300,000   | 25.00%    | 0.05     |
| 8 | 300,000  | 500,000   | 30.00%    | 0.05     |
| 9 | 500,000  | 1,000,000 | 35.00%    | 0.05     |
+---+----------+-----------+-----------+----------+

+----------------+----------------+
|      Sales     |  $ 160,000.00  |
+----------------+----------------+
| Commission US$ |  $ 24,500.00   |
| Global Rate %  | 15.31%         |
+----------------+----------------+

我输入"销售" H4中的金额和我有计算佣金美元的公式:

=SUMPRODUCT(--(H4>$B$4:$B$9),--(H4-$B$4:$B$9),$E$4:$E$9)

现在我的问题。如果我有一个名为" Sales"

+----+------------+--------------+
| ID | Date_Sales | Sales_Amount |
+----+------------+--------------+
|  1 | 2015-01-31 |       160000 |
|  2 | 2015-02-28 |       142000 |
|  3 | 2015-03-31 |       430222 |
|  4 | 2015-04-30 |       234000 |
+----+------------+--------------+

另一个"委托表" (要定义的结构),它反映了我上面的等级费率表(0-50 000,10%等等)

在mySQL中最好的方法(如果有必要,可以与php结合使用)来计算2015年1月的正确佣金,该金额应该达到24 500美元?

提前感谢您的帮助和建议。

1 个答案:

答案 0 :(得分:1)

我想你是在追求这样的事情:

SELECT s.id
     , SUM((s.sales_amount - r.tier_min) * r.dif_rate) x 
  FROM sales s 
  JOIN commission_rates r 
    ON r.tier_min <= s.sales_amount 
 GROUP 
    BY s.id;
+----+----------+
| id | x        |
+----+----------+
|  1 | 24500.00 |
|  2 | 20900.00 |
|  3 | 96566.60 |
|  4 | 41000.00 |
+----+----------+