В настоящее время у меня есть основная деталь с использованием одного курсора
DECLARE
CURSOR emps_cur (department_id_in IN INTEGER)
IS
select ENAME,DNAME,d.DEPTNO
from scott.EMP e, scott.DEPT d
where d.DEPTNO = e.DEPTNO;
BEGIN
FOR rec IN emps_cur (1700)
LOOP
DBMS_OUTPUT.put_line (rec.DEPTNO||' '||rec.DNAME);
DBMS_OUTPUT.put_line (rec.ENAME);
END LOOP;
END;
/
Что приводит к:
Statement processed.
10 ACCOUNTING
CLARK
10 ACCOUNTING
MILLER
10 ACCOUNTING
KING
20 RESEARCH
FORD
20 RESEARCH
SCOTT
20 RESEARCH
JONES
20 RESEARCH
SMITH
20 RESEARCH
ADAMS
30 SALES
WARD
30 SALES
MARTIN
30 SALES
TURNER
30 SALES
JAMES
30 SALES
ALLEN
30 SALES
BLAKE
Я пытался выяснить, как l oop это поэтому результаты выглядят так:
10 ACCOUNTING
CLARK
MILLER
KING
20 RESEARCH
FORD
SCOTT
JONES
SMITH
ADAMS
30 SALES
WARD
MARTIN
TURNER
JAMES
ALLEN
BLAKE
По сути, напечатайте deptno и dname и назначенных сотрудников прямо ниже (без дубликатов). Извините, если это кажется элементарным. Просто начал пытаться изучать PL / SQL, и я не могу найти ответ от поисковых систем.