Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Sugestão JPA

Seria interessante atualizar este curso informando que é possível utilizar o seguinte trecho de JPA para fazer um WHERE mais simples:

where (:nome IS NULL OR p.nome = :nome) AND (:VARIAVEL IS NULL OR p.VARIAVEL = :VARIAVEL) AND .... e por aí vai

4 respostas

Mas aí, se, por exemplo, o nome for especificado, a query vai retornar os registros que sejam iguais ao que foi passado, bem como aqueles que são nulos, não?

pelo que eu uso aqui no trabalho, esse IS NULL é usado pela JPA para trazer tudo caso o atributo seja nulo, veja que o IS NULL se refere ao :nome e não ao p.nome

(:nome IS NULL OR p.nome = :nome)

isso significa:

se :nome for nulo, ignora o p.nome = :nome, se não, adiciona o p.nome = :nome na querie

solução!

Ah, verdade. Não tinha repadado que era

:nome IS NULL

ao invés de

p.nome IS NULL

De qualquer forma, não sabia que isso existia. Valeu pela dica. Vou testar depois.

valeu! muito obrigado pela atenção!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software