Oracle函数+循环示例

自定义函数

函数的定义:
create/replace function 函数名 (参数名 输入输出类型 字段类型) return 字段类型 is
变量名 字段类型; --函数的内部变量,需要包含字段类型的长度
begin
主体;
return(变量名);
end 函数名;
观察到:
定义函数的参数和输出类型的时候不需要考虑字段类型的长度;
函数的内部变量需包含字段类型的长度;
函数可以没有输入输出参数,但一定要有返回(return)的数据类型,因此必须有内部变量存储return的数据;
函数的输入输出参数可以在主体中直接使用。
函数的执行:
--sqlplus
var 变量名 字段类型(包含长度);
exec :变量名:=函数名(参数的值,接收输出变量的变量名)
--developer
select 函数名(参数) from dual;

以下为例子: 


--没有输入输出参数的函数
create function fun_emp01 return nvarchar2 is
myresult nvarchar2(50);
begin
select max(first_name) into myresult from employees;
return(myresult);
end fun_emp01;
--执行
select fun_emp01() from dual;
 
--只带输入参数
create function fun_emp03(myvar1 in nvarchar2) return number is
myresult number;
begin
select count(1) into myresult from employees where job_id=myvar1;
return

猜你喜欢

转载自blog.csdn.net/someInNeed/article/details/119674650