Início > Programação > Como Exibir o Valor Máximo de uma Coluna com JPA

Como Exibir o Valor Máximo de uma Coluna com JPA

Consigo pensar em várias maneiras diferentes de apresentar o maior valor de uma coluna, mas há duas que considero as mais simples se você usa JPA: JPQL e TypedQuery.

1. Com JPQL fica assim:

Integer maiorIdade = (Integer)entityManager.createQuery(
   "SELECT MAX(f.idade) FROM Funcionario f").getSingleResult();

2. Com TypedQuery fica assim:

Integer maiorIdade = entityManager.createQuery(
   "SELECT MAX(f.idade) FROM Funcionario f", Integer.class)
     .getSingleResult();

Qual das duas é a melhor?

Acho que a resposta para esse tipo de pergunta ajuda a determinar a maturidade profissional. Faz anos que respondo quase automaticamente: depende. Se o seu objetivo é extrair o valor máximo de uma coluna mesmo que precise passar alguns parâmetros para construir uma cláusula WHERE simples, utilize JPQL ou NamedQuery. Se a sua consulta demanda parâmetros dinâmico e alguns JOIN mais elaborados, é melhor passar para o universo do Criteria onde TypedQuery é um dos atores.

Anúncios
  1. Nenhum comentário ainda.
  1. No trackbacks yet.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: