I have the following table with two fields namely a and b as shown below:
create table employe ( empID varchar(10), department varchar(10) );
Try this,
SELECT a.empId FROM employe a INNER JOIN ( SELECT empId FROM employe WHERE department IN ('X', 'Y', 'Z') GROUP BY empId HAVING COUNT(*) = 3 )b ON a.empId = b.empId GROUP BY a.empId
Count must based on number of conditions.