2015-11-07 39 views
0

考慮三個表房源詳細信息基於計數另一個表

  • 部門
  • dept_emp
  • 員工

我想列出誰被分配到的部門有更多的員工超過50,000名員工。

我試過幾種不同的方法使用子查詢,但沒有得到它的權利。

這是一次失敗的嘗試。注:我想細節的員工,他們是在

select 
    a.dept_name, 
    c.* 
from 
    departments a 
left outer join 
    dept_emp b 
on 
    b.dept_no = a.dept_no 
left outer join 
    employees c 
on 
    c.emp_no = b.emp_no 
where 
    c.emp_no 
in 
    (select 
     emp_no 
    from 
     dept_emp 
    group by 
     dept_no 
    having 
     count(dept_no) > 50000 
    ) 
+0

請張貼您的嘗試 –

回答

1

部門這是你在找什麼?

select 
a.dept_name, 
c.* 
from departments a 
inner join dept_emp b on b.dept_no = a.dept_no 
inner join employees c on c.emp_no = b.emp_no 
where b.dept_no in 
(select dept_no 
from dept_emp 
group by dept_no 
having count(*) > 50000 
) 
+0

爲什麼內部連接工作和外部不是? – Vietyank

+0

這不是問題。你在子查詢中用'emp_no'代替'dept_no'進行組合。 –

+0

非常感謝。我有一個更困難的工作,但這可能引導我。 – Vietyank