Postgresql: consulta que devuelve datos incorrectos

Supongamos que tengo una mesaempgroupinfo y quiero buscar a los empleados que vienen exactamente en estos dos ID de grupo500 and 501 (vendrá dinámicamente) solamente, no debe venir en más o menos número de grupo, dondeempid != 102 que está en 500 groupid.

He intentado la siguiente consulta:

select empid from empgroupinfo 
where empgroupid in(500,501) and empid != 102
group by empid having count(empid) = 2

Pero esta consulta anterior también devuelve el vacío que hay en otros grupos.

Quiero buscar elempid para el caso en que los empleados están exactamente en estos dos groupids (500 y 501) solamente yempid != 102.

Respuestas a la pregunta(2)

Su respuesta a la pregunta