SQL: muitos-para-muitos tabela e consulta
Primeiramente - desculpas pelo título difuso, não consegui encontrar um melhor.
Eu tenho tabela com a seguinte estrutura (simplificação):
<code>EmpID DeptID 1 1 1 2 2 1 3 2 4 5 5 2 </code>
Esta tabela representa um relacionamento muitos para muitos.
Estou interessado em encontrar todos os EmpIDs que estão relacionados a um grupo específico de DeptIDs, por exemplo, eu quero todos os EmpIDs que estão relacionados aos DeptIDs 1, 2 e 3. Por favor, note que é um relacionamento AND e não um relacionamento OR. No meu caso, o EmpID pode estar relacionado a DeptIDs adicionais além de 1, 2 e 3 para que seja uma resposta válida.
O número de DeptIDs nos quais estou interessado em alterações (por exemplo, posso querer os EmpIDs relacionados ao DeptID 3 e 5, ou posso querer os EmpIDs relacionados aos DepIDs 2, 3, 4, 5, 6, 7).
Quando tento abordar esse problema, encontro-me criando um JOIN por DepID ou uma subconsulta por DeptID. Isso significa que preciso gerar uma nova consulta pelo número de DeptIDs com os quais estou testando. Eu obviamente preferiria ter uma consulta estática com um parâmetro ou conjunto de parâmetros.
Estou trabalhando tanto no SQL Server quanto no MySQL (desenvolvendo em paralelo duas versões do meu código).
Alguma ideia?