`
wenjinglian
  • 浏览: 824488 次
  • 性别: Icon_minigender_1
  • 来自: 株洲->深圳
社区版块
存档分类
最新评论

Oracle function 个人所得税

阅读更多

起征税3000

create or replace function tax(v_salary in number) return number is
  v_expense number; 
  --本级速算扣除额=上一级最高所得额×(本级税率-上一级税率)+上一级速算扣除数
  v_quick_deduction number := 0;
  v_temp number;
begin
  v_temp := v_salary - 3000;
  if v_temp <= 1500  then
     v_temp := v_temp * 0.05;
   elsif v_temp > 1500 and v_temp <= 4500 then
     v_temp := v_temp * 0.1;
     v_quick_deduction := 1500*(0.1-0.05)  + 0;
   elsif v_temp > 4500 and v_temp <= 9000 then
     v_temp := v_temp * 0.2;
     v_quick_deduction := 4500*(0.2-0.1) + 1500*(0.1-0.05);
   elsif v_temp > 9000 and v_temp <= 35000 then
     v_temp := v_temp * 0.25;
     v_quick_deduction := 9000*(0.25-0.2) + 4500*(0.2-0.1) ;
   elsif v_temp > 35000 and v_temp <= 55000 then
     v_temp := v_temp * 0.3;
     v_quick_deduction := 35000*(0.3-0.25) +  9000*(0.25-0.2);
   elsif v_temp > 55000 and v_temp <= 80000 then
     v_temp := v_temp * 0.35;
     v_quick_deduction := 55000*(0.35-0.3) + 35000*(0.3-0.25);
   elsif v_temp > 80000 then
     v_temp := v_temp * 0.45;
     v_quick_deduction := 80000*(0.45-0.35) + 55000*(0.35-0.3);
   else
     dbms_output.put_line('进来就不收你钱!');
     v_temp := 0;
   end if;
   v_expense := v_temp - v_quick_deduction;
  return(v_expense);
end tax;

测试: select tax(5000) from dual;

结果:125

0
0
分享到:
评论

相关推荐

    oracle function 返回结果集

    ### Oracle Function 返回结果集 #### 知识点概述 在Oracle数据库中,有时我们需要创建一个函数来返回一个结果集(即一系列记录),而非单一值。本文档中的代码示例展示了如何定义一个返回自定义表类型的函数`Ns_...

    oracle_function用法

    Oracle 函数用法 Oracle 函数是Oracle数据库中的一种编程对象,它允许用户定义自己的函数,以便在SQL语句中调用。 Oracle 函数的用法可以分为以下几个方面: 函数调用限制 在 Oracle 中,函数可以在 SQL 语句中被...

    oracle function.rar

    oracle function.rar

    Oracle Function Collection

    Decrible the functions using in the Oracle, you could use them to program for PL/SQL

    oracle-function-执行动态sql(包括DML、DLL、DQL、DCL)

    oracle-function-执行动态sql(包括DML、DLL、DQL、DCL)

    Oracle的几个Function实例

    在"Oracle的几个Function实例"这个主题中,我们将探讨一些常见的Oracle函数,并通过实际示例来理解它们的用法。 1. ** NVL 函数**: NVL函数用于处理空值(NULL)。如果一个字段的值为NULL,NVL函数会将其替换为你...

    oracle function 实现七种银行企业帐对帐

    根据提供的信息,我们可以总结出以下有关Oracle Function在实现银行企业账对账中的应用与细节。 ### Oracle Function在银行企业账对账中的应用 #### 1. **Function Get_RevokeRecImport 的实现** 此函数用于处理...

    Oracle 11gR2创建PASSWORD_VERIFY_FUNCTION对应密码复杂度验证函数步骤.doc

    这可以通过创建和应用`PASSWORD_VERIFY_FUNCTION`来实现。`PASSWORD_VERIFY_FUNCTION`允许我们自定义一个PL/SQL函数,该函数将在用户尝试更改密码时进行验证,确保新密码满足预设的复杂度规则。以下是在Oracle 11g ...

    Oracle SQL function.ppt

    Oracle SQL 函数是数据库管理中不可或缺的一部分,它们用于处理和操作数据,提供了一种强大的工具集来执行各种计算、转换和数据提取任务。在Oracle 8i版本中,SQL内置函数涉及了数字格式化和日期格式化等多个方面。 ...

    oracle-function-执行动态sql

    execute immediate str_sql into tabtcn; --动态执行DDL语句

    Oracle SQL 內置函數大全 Oracle SQL function.ppt

    简绍oracle的内置函数,方便查看

    Oracle_function.zip_oracle

    本资料"Oracle_function.zip_oracle"包含的"Oracle_function.chm"帮助手册正是为了解析和理解Oracle中的各种函数而准备的。 首先,我们要明白函数是预定义的代码块,可以接受一个或多个输入(参数),执行特定操作...

    Oracle培訓Procedure﹑Function等简介

    Oracle培訓Oracle Procedure﹑Function、Trigger等

    Oracle SQL function

    Oracle SQL 函数是数据库查询和管理中的重要工具,它们允许用户执行各种操作,如数据转换、计算、格式化等。在Oracle 8i版本中,内置的SQL函数提供了丰富的功能来处理数字、日期和字符串类型的数据。以下是这些函数...

    oracle-function--api.zip_oracle_oracle API_oracle sql api

    本资料“oracle-function--api.zip”包含了Oracle数据库中的一些核心API和SQL函数,特别是针对字符串、日期和数字类型的处理,对于Oracle开发人员来说极具参考价值。 一、Oracle SQL API Oracle SQL API是Oracle...

    Oracle SQL function.pptx

    Oracle SQL function.pptx

Global site tag (gtag.js) - Google Analytics