需求
@天涯:个税改革了,求做一个函数:salaryTax2019(本年度累计纳税所得额,本年度累计纳税)。
本年度累计纳税所得额 | 本年度累计纳税 | 本月应缴个税 |
---|---|---|
5000 | 100 | 50 |
50000 | 2000 | 480 |
实现关键
在sql中建一个自定义函数,代码如下:
--2019个税
create function fGetSalaryTax2019(@Num decimal(20,2)='',@Num2 decimal(20,2)='')
returns decimal(20,2)
as
begin
declare @tax decimal(20,2)
select @tax=max(tax) from (
select @Num*0.01*3 as tax
union all select @Num*0.1-2520
union all select @Num*0.2-16920
union all select @Num*0.25-31920
union all select @Num*0.3-52920
union all select @Num*0.35-85920
union all select @Num*0.45-181920) t
return round(@tax,2)-@Num2
end
测试效果:
实际使用
以NX为例,在提数时使用函数即可
填充时手填一下sql自定义函数
最终效果
做个按钮执行提数,效果图:
小结
- 在提数填充时直接使用自定义sql函数
2019-09-26