Olá!
Caso eu queira disparar uma query complexa, com subquerys e union's.... é possível criar uma query na mão (igualmente a criada direto no banco) e disparar contra o banco via jpql ?
Olá!
Caso eu queira disparar uma query complexa, com subquerys e union's.... é possível criar uma query na mão (igualmente a criada direto no banco) e disparar contra o banco via jpql ?
Opa, só se a jpql tiver suporte... para union não tem. O melhor é fazer uma nativequery e mapear os resultados para seus objetos.
Alberto,
Deu certo, mas tenho um novo problema, o retorno que volta da query é um objeto criado na aplicação, logo a pergunta é como acessar um objeto que está dentro de uma lista de Object ?
EntityManager em = new JPAUtil().getEntityMager();
em.getTransaction().begin();
Conta conta = new Conta();
conta.setId(2);
String teste = "select tipo, sum(valor) from movimentacao group by tipo";
Query q = em.createNativeQuery(teste);
List<Object> retorno = q.getResultList();
for (Object o : retorno) {
//como acessar um objeto que está dentro de uma lista de Object ?
}
em.getTransaction().commit();
em.close();