第四章 函数


样例1,不带参数的函数
CREATE OR REPLACE FUNCTION helloworld
RETURN VARCHAR2
IS
BEGIN
RETURN ‘朋友,您好’;
END;

调用函数:语句的调用
SELECT helloworld() FROM DUAL;
第二种调用方法:PL/SQL块
begin
dbms_output.put_line(helloworld);
end;


样例2,带参数的函数
create or replace function getSal(v_empno varchar)–pl/sql 块 支持 varchar
return number –指定函数返回值的数据类型,不能指定其长度
is
v_sal number(4);
begin
select sal into v_sal from emp where empno=v_empno;
return v_sal; –当建立函数时,在函数头部必须要带有RETURN子句,在函数体内至少要包含一条RETURN语句。
end;
调用函数:
Select getsal(7369) from dual;伪列
Select getsal(empno) from emp;具体的列名


/创建一个函数,通过部门编号得到部门的名称信息/
create or replace function getename(p_deptno number)
return varchar2
is
v_dname varchar2(20);
begin
select dname into v_dname from dept where deptno=p_deptno;
return v_dname;
end;

select getdname(10) from dual;
select getdname(deptno) ,ename from emp;


/创建一个函数,得到员工的经理名字?/
create or replace function getname(p_empno number)
return varchar2
is
XX varchar2(20);
begin
select ename into XX from emp where empno=p_empno;
return XX;
end;
调用:
select getname(empno),ename,getname(mgr)
from emp;

猜你喜欢

转载自blog.csdn.net/weixin_42800008/article/details/81317706