Boa noite pessoal. Estou com o seguinte problema.
Possuo o seguinte código
StringBuilder sb = new StringBuilder();
sb.append("select count(cliente.bloqueio_cod) ");
sb.append(",count(case when situacao.id = 1 then situacao.id end) ");
sb.append(",count(case when situacao.id = 31 then situacao.id end) ");
sb.append(",count(case when situacao.id = 34 then situacao.id end) ");
sb.append(",count(case when situacao.id > 34 then situacao.id end) ");
sb.append("from cliente.clienteEmpresa cliente ");
sb.append("left join cliente.classe_social classe ");
sb.append("on cliente.classe_social_id = classe.id ");
sb.append("inner join cliente.situacao situacao ");
sb.append("on cliente.bloqueio_cod = situacao.codigo ");
sb.append("where cliente.endereco_cep between ?1 and ?2 ");
sb.append("and classe.codigo = ?3");
Object objResult = entityManager.createNativeQuery(sb.toString())
.setParameter(1, Long.parseLong(cep_inicial))
.setParameter(2, Long.parseLong(cep_final))
.setParameter(3, classe_social)
.getSingleResult();
Object[] arrayObject = new Object[4];
arrayObject = (Object[])objResult;
Onde executo um select que trás um registro com 5 colunas. Passando os parametros para a consulta, o resultado esperado seria 65 25 1 0 39, porém quando vou ler o conteúdo do array o que recebo é 65 65 65 65 65.
Acredito que deva ser algum tipo de problema com o getSingleResult, mas como se trata de apenas 1 registro, nao vi necessidade de utilizar o getResultList.
Alguem tem alguma idéia?