Я изучаю SQL, используя эту базу данных Oracle.
![diagram](https://docs.oracle.com/cd/B13789_01/server.101/b10771/comsc002.gif)
У меня возникли некоторые проблемы с задачей: отобразить количество всех сотрудников и количество нанятых сотрудников2004, 2005, 2006 год за годом.
Я могу выполнить эти две части по отдельности, но учитель сказал, что он должен быть обработан в рамках одного запроса, и никаких подзапросов не требуется.
SELECT COUNT(EMPLOYEE_ID) FROM EMPLOYEES;
В приведенной выше строке указаны все сотрудники.
SELECT EXTRACT(YEAR FROM HIRE_DATE) AS YEAR, COUNT(EMPLOYEE_ID) AS HIRED_EMPLOYEES
FROM EMPLOYEES
WHERE EXTRACT(YEAR FROM HIRE_DATE) IN (2004, 2005, 2006)
GROUP BY EXTRACT(YEAR FROM HIRE_DATE);
И вышеприведенная часть отлично работает для подсчета людей, принятых на работу в 2004, 2005, 2006 годах.
Я думаю, что, возможно, есть способ суммировать мои результаты, сгруппированные по годам, и получить общее количество сотрудников в пределахэтот единственный запрос, но часть WHERE является препятствием.Буду признателен за любые предположения, возможно, настолько простые, насколько это возможно, поскольку это был только мой второй класс написания запросов.