存储函数 函数为一命名的存储程序,可带参数,并返回一计算值。 函数和过程的结构类似,但必须有一个return子句,用于返回函数值 ---注意:当一个表达式包含null值,往往会导致得不到正确的结果,或者没有结果 所以最好的做法是使用nvl函数将空值以0代替 --查询某个员工的年收入 create or replace function queryempincome(eno in number) return number as psal emp.sal%type; pcomm emp.comm%type; begin ---得到该员工的月薪和奖金 select sal,comm into psal,pcomm from emp where empno=eno; --直接返回年收入 return psal*12+nvl(pcomm,0); end; /
//调用函数 declare vsum number; begin vsum := func_getyearsal(7369); dbms_output.put_line('年薪:'||vsum); //输出编号是7369的年薪 end;