Упражнения для курсора PL / SQL: отображение названия отдела, имени руководителя, количества сотрудников в каждом отделе и количества сотрудников, перечисленных в job_history
Курсор PL / SQL: упражнение 29 с решением
Напишите блок PL / SQL, чтобы отобразить название отдела, имя руководителя, количество сотрудников в каждом отделе и количество сотрудников, перечисленных в job_history.
Показать название отдела, менеджера, количество сотрудников
Пример решения:
Код PL / SQL:
DECLARE
CURSOR dpt_cur IS
SELECT d.department_id id,
department_name name,
Nvl(first_name, ' ') manager
FROM departments d
left outer join employees e
ON ( d.manager_id = e.employee_id );
emp_count NUMBER(3);
job_hist_count NUMBER(3);
BEGIN
FOR dept_all IN dpt_cur LOOP
SELECT Count(*)
INTO emp_count
FROM employees
WHERE department_id = dept_all.id;
SELECT Count(*)
INTO job_hist_count
FROM job_history
WHERE department_id = dept_all.id;
dbms_output.Put_line(Rpad(dept_all.name, 20)
|| Rpad(dept_all.manager, 15)
|| To_char(emp_count, '9999')
|| To_char(job_hist_count, '9999'));
END LOOP;
END;
/
Пример вывода:
SQL> / Связи с общественностью Герман 1 0 Доставка Адам 45 2 Финансы Нанси 6 0 Маркетинг Майкл 2 1 Бухгалтерский учет Шелли 2 2 IT Александр 5 1 Исполнительный Стивен 3 2 Человеческие ресурсы Сьюзен 1 0 Закупка Ден 6 0 Sales John 34 2 Администрация Дженнифер 10 0 Заработная плата 0 0 Рекрутинг 0 0 Розничные продажи 0 0 Государственные продажи 0 0 IT Helpdesk 0 0 НОК 0 0 IT поддержка 0 0 Операции 0 0 Договаривающиеся 0 0 Строительство 0 0 Производство 0 0 Преимущества 0 0 Услуги для акционеров 0 0 Контроль и Кредит 0 0 Корпоративный налог 0 0 Казначейство 0 0 Процедура PL / SQL успешно завершена.
Блок - схема:
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите блок PL / SQL, чтобы отобразить название отдела, руководителя отдела, города и сотрудника с самой высокой зарплатой.
Далее: Запишите блок в PL / SQL, чтобы отобразить имя сотрудника и количество заданий, которые он или она выполняли в прошлом. Отображает имя сотрудника и количество работ по заданию
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования