zoukankan      html  css  js  c++  java
  • 函数

    ------------------------------------------------函数 begin---------------------------------
    22. 函数的 helloworld: 返回一个 "helloworld--!" 的字符串

    create or replace function helloworld
    return varchar2
    is
    begin
           return 'helloworld--!';
    end;
    
    
    执行函数
    
    
    begin
        dbms_output.put_line(helloworld());
    end;

    23. 定义带参数的函数: 两个数相加

    create or replace function add_func(a number, b number)
    return number
    is
    begin
           return (a + b);
    end;

    执行函数

    begin
        dbms_output.put_line(add_func(12, 13));
    end;

    25. 定义一个函数: 获取给定部门的工资总和, 要求, 部门号定义为参数, 工资总额定义为返回值.

    create or replace function sum_sal(dept_id number)
           return number
           is
           
           cursor sal_cursor is select salary from employees where department_id = dept_id;
           v_sum_sal number(8) := 0;   
    begin
           for c in sal_cursor loop
               v_sum_sal := v_sum_sal + c.salary;
           end loop;       
    
    
           dbms_output.put_line('sum salary: ' || v_sum_sal);
           return v_sum_sal;
    end;

    执行函数

    begin
        dbms_output.put_line(sum_sal(80));
    end;

    26. 关于 OUT 型的参数: 因为函数只能有一个返回值, PL/SQL 程序可以通过 OUT 型的参数实现有多个返回值
    要求: 定义一个函数: 获取给定部门的工资总和 和 该部门的员工总数, 要求: 部门号定义为参数, 工资总额定义为返回值.

    create or replace function sum_sal(dept_id number, total_count out number)
           return number
           is
           
           cursor sal_cursor is select salary from employees where department_id = dept_id;
           v_sum_sal number(8) := 0;   
    begin
           total_count := 0;
    
    
           for c in sal_cursor loop
               v_sum_sal := v_sum_sal + c.salary;
               total_count := total_count + 1;
           end loop;       
    
    
           --dbms_output.put_line('sum salary: ' || v_sum_sal);
           return v_sum_sal;
    end;   

    执行函数:

    declare 
      v_total number(3) := 0;
    
    
    begin
        dbms_output.put_line(sum_sal(80, v_total));
        dbms_output.put_line(v_total);
    end;

    ------------------------------------------------函数 end---------------------------------

  • 相关阅读:
    mysql表的完整性约束
    Web服务器Tomcat集群与负载均衡技术
    集群中几种session同步解决方案的比较[转]
    web集群时session同步的3种方法[转]
    WEB 集群与负载均衡(一)基本概念-上
    传输层负载均衡实现原理
    企业级web负载均衡完美架构
    高可用负载均衡最佳实践三: 设计
    网站架构之负载均衡
    使用nginx sticky实现基于cookie的负载均衡
  • 原文地址:https://www.cnblogs.com/nbkyzms/p/5031430.html
Copyright © 2011-2022 走看看