2012-05-28 47 views
0

員工部門架構如何讓員工與各部門的數量以及每個部門(部門ID,部門名稱)的細節。如何顯示部門詳細信息以及每個部門的員工數量?

+0

分享模式,並詢問你都試過了。 –

+0

沒有真正看到你的表格結構,我只能建議你「統計(員工)」和按部門分組。 –

+0

部門表中有(deptId,deptName),employee表中有(empId,empname,deptId)這裏deptId是員工表中的員工表是外鍵。現在我想得到deptId,deptName,員工人數 – user1420981

回答

3

,你可以採取爲 - (羅素·迪亞斯也建議)

select d.deptId, 
     deptName, 
     count(e.empid) "number of employees" 
from department d, employee e 
where d.deptid = e.deptid 
group by d.deptid,d.deptname 
5

試試這個

select dept.deptId, 
    deptName, 
    count(emp.empid) as numb_of_emps 
    from department dept inner join employee emp 
    on dept.deptid = emp.deptid 
    group by dept.deptid 
0

如果您並不需要實際部門的細節,而只是部門名稱你可以這樣簡化:

SELECT department_name, COUNT(*) AS "Number of employees" 
FROM employees group by department; 
0
select d.deptno,dname,count(e.empno) "No of Emp" 
from dept d, emp e 
where d.deptno = e.deptno 
group by d.deptno,d.dname 
0
SELECT department_name,COUNT(*) FROM employees a,departments b 
where a.department_id=b.department_id 
group by department_name; 
0
select d.deptno, d.dname, count(e.empno) "Number of employees" 
from dept d, emp e 
where d.deptno = e.deptno 
group by d.deptno,d.dname; 
0

您可以使用INNER JOIN:

Select e.EmployeeName, 
     d.DepartmentName, 
     count(d.DepId)As Total_no_of_Employees 
From Department d 
Inner join Employee e 
    On d.DepId = e.EmpID 
Groub By DepartmentName, Total_no_of_Employees 
相關問題