Display department name,the number of employees and their names I have two tables (employees) (departments)

I want to generate the following output:

num_of_employees   department       employee_name
10                 marketing            john   
10                 marketing            mark


so on and so forth.        

I tried using this`

select count(employee_ID) as "num of employees", department_name, employee_name
from employees e, departments d
where e.dept_id = d.dept_id
group by department_name, employee_name


Without adding the emp name I get the correct solution, but with the employee I get 1 in the num of employees
You need to fetch the number of employees in a sub-query and then use this:

select 
  q.total as "num of employees", 
  d.department_name, 
  e.employee_name
from 
  departments d join 
  employees e on d.dept_id=e.dept_id join    
  (
    select 
      count(dept_id) as total, 
      dept_id
    from     
      employees
    group by department_id
    ) q on d.dept_id=q.dept_id
group by d.department_name, e.employee_name