私はオラクルでこのストアドプロシージャを取得しました
create or replace
procedure mayor_sueldo
as
cursor c_depto is select deptno from dept;
c_deptno dept.deptno%type;
c_empno number;
c_ename emp.ename%type;
c_job emp.job%type;
c_sal emp.sal%type;
begin
open c_depto;
fetch c_depto into c_deptno;
while ( c_depto%found )loop
select empno, ename, job, sal into c_empno, c_ename, c_job, c_sal from emp where sal = (select max(sal) from emp where(deptno = c_deptno) );
dbms_output.put_line( c_empno||'-'||c_ename||'-'||c_job||' '||c_sal );
fetch c_depto into c_deptno;
end loop;
close c_depto;
end;
問題は while ブロック内のクエリ内にあります。クエリが 1 つの行のみを返す場合、問題はありませんが、クエリが複数の行を返す場合はどうすればよいでしょうか。私を助けてください