Olá!
Tenho a seguinte entidade (simplificada):
@Entity
class Questao {
@ManyToMany
private List topicos;
//get e set
}
Minha dúvida é: como faço para buscar todas questões que têm determinados tópicos? É possível? Há mais de um jeito de fazer?
Os tópicos não são obrigatórios e pode ter um mesmo tópico em questões diferentes.
Utilizo JPA (EntityManager) no Hibernate.
Tentei fazer (simplificado):
select q from Questao as q left join q.topicos as t where t.id in (:listaDeTopicos)
Mas as questões que têm mais de um tópico vêm “duplicadas”. Não posso usar “distinct” porque preciso ordenar por um outro critério.