Query jpql não consigo fazer funcionar dificuldade

Bom dia pessoal estou com uma duvida, tenho as seguintes tabelas mapeadas (abstraidas) :

nivel_alto {id_nivel alto}

info_elementos {id_info_elementos
pk_id_nivel_alto (mapeada com OneToOne)
pk_id_elemento(mapeada com ManyToOne)
}
elementos {id_elemento
id_parente}

Com o sql normal consigo chegar lá tranquilo:

select count(*) from nivel_alto n inner join info_elementos i on i.id_nivel alto = n.id_nivel alto inner join elementos e on e.id_elemento = i.id_elemento where n.status = ‘11’ and e.id_parente = ?"

A query funciona perfeitamente p/ minha aplicacao, mas tentei passar p/ jpql e não funciona, podem me ajudar?

tentei assim :

 "SELECT COUNT (n) FROM nivel_alto n JOIN Info_Elementos i on i.id_nivel_alto = n.id_nivel_alto JOIN i.id_elemento e WHERE h.status = '11' and n.id_parente = :idparente ";

Já está com a solução. Por que ir pelo caminho mais complicado? Muito mais prático fazer consultas diretamente por SQL.

Pra alguém te ajudar no jpql terá que postar os mapeamentos e o SQL gerado pelo hibernate.

pq eu realmente preciso fazer com o jpql, é o codigo da empresa com pattern, tentei fazer usando @NamedNativeQuery, funcionou mas ficou muito lento.

Esses padrões só complicam. Sobre performance, de uma forma ou de outra no final das contas um SQL será enviado ao banco. Tem que ver como tao os índices.

Pra alguem te ajudar no jpql tem que postar os mapeamentos…