Oracle中的函数

来源:互联网 发布:香港阿里云 dns 编辑:程序博客网 时间:2024/06/01 19:30
函数与存储过程的区别:两者都是存储在数据库中的程序块,但是存储过程没有返回值,函数有返回值,

所以在函数的主题部分必须使用return语句返回一个函数值,返回值类型与声明时的返回值类型要相同。

1、定义一个函数:函数名:getavgsal;参数:num_deptno,类型是:number;返回值类型是:number。

create or replace function getavgsal(num_deptno number) return number is  avgsal number;begin  select avg(sal)into avgsal from emp where deptno=num_deptno;  return avgsal;exception  when no_data_found then    dbms_output.put_line('该部门不存在');    return (0);end getavgsal;/

2、调用函数:

declare  avgsal number;begin  avgsal:=getavgsal(10);  dbms_output.put_line('平均工资是'||avgsal);end;/

3、删除函数:
SQL> drop function getavgsal;

原创粉丝点击