我有一個包含2列的表,比如Empname,DepartmentName,其中一個員工可以在多個部門中工作,反之亦然。 我想寫一個查詢來選擇基於某些部門組合的EmpName。 例如。只在部門1,部門2和部門3下工作的員工(在這種情況下,只應選擇僅在3個部門工作的員工)SQL語句中的問題使用「in」獲取記錄組合
以下是我試過的查詢。
Select EmpName, Count(*) as Total from Emp_Departments where DepartmentName in ('Dept1', 'Dept2', 'Dept3') group by EmpName having Total=3
問題是,任何工作任何上述部門和他們的總數的員工是3,它也返回他們的行。 請建議我怎樣才能得到唯一的組合。
什麼是你的表的結構? 'EmpName'是唯一的嗎? 「EmpName」,「DepartmentName」組合是否也是唯一的? –
是的EmpName和部門的組合是獨特的 – AjayR
單獨的'EmpName'如何?是獨一無二的嗎? –