кодесурса
«PL / SQL

Упражнения для курсора PL / SQL: отображение названия отдела, имени руководителя, количества сотрудников в каждом отделе и количества сотрудников, перечисленных в job_history

script1adsense2code
script1adsense3code

Курсор 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 программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code