create or replace function getempname(empnum emp.empno%type)
return emp.ename%type
is
empname emp.ename%type;
begin
select ename into empname from emp
where empno = empnum;
return empname;
end;通过下面测试 返回多条记录
select getempname(7931),empno from emp
我想要的是返回一条记录 怎么写
return emp.ename%type
is
empname emp.ename%type;
begin
select ename into empname from emp
where empno = empnum;
return empname;
end;通过下面测试 返回多条记录
select getempname(7931),empno from emp
我想要的是返回一条记录 怎么写
如果是想根据一定条件返回一条结果,那就修改你的查询。
return emp.ename%type
is
empname emp.ename%type;
begin
select ename into empname from emp
where empno = empnum
rowid<2;
return empname;
end;
where empno = empnum; 有into,函数可以正常调用,说明只返回了一个结果吧?如果是最后那个select语句导致了多行相同的结果,可以加distinct,或者rownum=1限制只输出一行。