Skip to content

个人所得税计算方式

个人所得税计算方式 published on
-- 定义存储过程
create or replace procedure get_rax(sal in number,rax out number)
as
  -- sal表示收入
  -- bal 表示需要交税的收收入
  bal number;
begin
  bal := sal - 3500;
  if bal <= 1500 then
    rax := bal * 0.03 - 0;
  elsif bal <= 4500 then
    rax := bal * 0.1 - 105;
  elsif bal <=9000 then
    rax := bal * 0.2 - 555;
  elsif bal <=35000 then
    rax := bal * 0.25 - 1005;
  elsif bal <= 55000 then
    rax := bal * 0.3 - 2755;
  elsif bal <=80000 then
    rax := bal * 0.35 - 5505;
  else
    rax := bal * 0.45 - 13505;
  end if;
end;
/


-- 调用存储过程
declare
   -- 需要交的税
   rax number;
begin
   get_rax(&sal,rax);
   dbms_output.put_line('你需要交税' || rax);
end;
/

参考个税计算,减去级差,没必要一级级拆分计算:

with price(prov,x,y,price,diff) as
(
    select 'BJ', 0,   180,        $0.4, $0  union all
    select 'BJ', 180, 300,        $0.5, $18 union all
    select 'BJ', 300, 2147483647, $0.7, $78 union all
    select 'AH', 0,   180,        $0.5, $0  union all
    select 'AH', 180, 300,        $0.6, $18 union all
    select 'AH', 300, 2147483647, $0.8, $78 union all
    select 'ZJ', 0,   300,        $0.5, $0  union all
    select 'ZJ', 300, 500,        $0.6, $30 union all
    select 'ZJ', 500, 2147483647, $0.8, $130
),
data(name,prov,val) as
(
    select '张三', 'BJ', 200 union all
    select '李四', 'AH', 500 union all
    select '王五', 'ZJ', 500
)
select a.*, val*price-diff from data a, price b where a.prov=b.prov and val>=x and val<y
/*
张三    BJ    180    72.00
李四    AH    500    322.00
王五    ZJ    500    270.00
*/

作者:赵欣
链接:https://www.zhihu.com/question/24529019/answer/28104421
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

速算扣除数并非税法规定,而是根据税法推算出来的一个方便计算的系数。

现行税法中实际上关于个税的计算这么规定的。

个人所得税税率表一(工资、薪金所得适用)

级数 全月应纳税所得额 税率(%)

  1. 不超过1500元的 3
  2. 超过1500元至4500元的部分 10
  3. 超过4500元至9000元的部分 20
  4. 超过9000元至35000元的部分 25
  5. 超过35000元至55000元的部分 30
  6. 超过55000元至80000元的部分 35
  7. 超过80000元的部分 45

例一:如果某人扣保险后工资10,000,怎么计算个税呢?
10,000=3500+1500+3000+2000

其中3500免征;1500按3%,征税45元;3000按10%,征300元;2000按20%,征400元。
整个算下来征税745元。

这么算很麻烦,所以会计们发明了速算扣除数。

所谓的“速算扣除数”就是:在超额累进税率计税法中,对计税依据直接乘上最高税率,得到的结果与真实的税额之差,这个差在每一级都是一个常数。事先推出这个常数,对于快速计算税额很有帮助,所以这个数叫“速算扣除数”。

快速计算个税的公式是【计税依据×最高税率-速算扣除数=最终税额】。

  • 税率3%对应速算扣除数为0
  • 税率10%对应速算扣除数为1500*(10%-3%)+0=105
  • 税率20%对应速算扣除数为4500*(20%-10%)+105=555
  • 税率25%对应速算扣除数为9000*(25%-20%)+555=1005
  • 税率30%对应速算扣除数为35,000*(30%-25%)+1,005=2,775
  • 税率35%对应速算扣除数为55,000*(35%-30%)+2,775=5,505
  • 税率45%对应速算扣除数为80,000*(45%-35%)+5,505=13,505

例二:如果某人扣保险后工资10,000,怎么计算个税呢?
10,000-3,500=6,500元。
6,500介于4,500和9,000之间,使用税率20%,速算扣除数555
6,500*20%-555=745