这样的数据算法如何设计表结构较好。谢谢!
某一房产公司业务员的提成算法如下:
业务额 提成比率
RMB 1.00 至 RMB 5 000 5%
RMB 5001 至 RMB 10 000 10%
RMB 10001 至 RMB 20 000 15%
RMB 20001 至 以上 20%
如果业务额为8000,那么提成为 5000*5%+(8000-5000)*10%=550
如果业务额为15000,那么提成为 5000*5%+5000*10%+(15000-10000)*15%=1500
表结构如何设计:
我的想法如下:
stnum ednum per
1 5000 5%
5001 10000 10%
10001 20000 15%
20001 20%
另外一种是:
st1 per1 st2 per2 st3 per3 st4 per4
5000 5% 10000 10% 20000 15% 20%
不知大家的意思如何,谢谢!
------解决方案--------------------用第一种方法,原因:方便好用,如果将来需要增加项目不必改数据结构,直接加记录就OK
------解决方案--------------------第一种比较好,在读数据比较上要比第二种强得多;
不要在乎记录的条数;你那几条记录对表的性能影响几乎可以忽略不计[无论是查询还是运算]
------解决方案--------------------第一种吧,很灵活,数据库不用变
------解决方案--------------------普通的累进税率处理方法,最方便的方式是
业务额,提成比率,速算扣除数
计算方法 业务额×当前提成比率-速算扣除数
------解决方案--------------------级数 全月应纳税所得额 税率% 速算扣除数(元)
1 不超过500元的 5 0
2 超过500元至2000元的部分 10 25 25=500*(10-5)%
3 超过2000元至5000元的部分 15 125 125=2000*(15-10)%+25
4 超过5000元至20000元的部分 20 375 375=5000*(20-15)%+125
5 超过20000元至40000元的部分 25 1375
6 超过40000元至60000元的部分 30 3375
7 超过60000元至80000元的部分 35 6375
8 超过80000元至100000元的部分 40 10375
9 超过100000元的部分 45 15375
后面就是速算扣除数的算法