Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Como fazer consultas utilizando as funçoes count, avg, sum?

Estou tentando fazer consultas usando essas expressões mas não da certo Tentei usando a notação do spring mas não achei nada que fizesse isso e usando jpql não esta dando certo Alguem tem alguma sugestão?

@Query("SELECT COUNT(p.id) as qtd, p.sexo FROM Pessoas p  GROUP BY p.sexo")
List<Pessoas> divisaoPorSexo();

construtor


    public Pessoas(Integer qtd, String sexo) {
        this.qtd = qtd;
        this.sexo = sexo;
    }

erro


org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [java.lang.Long] to type [@org.springframework.data.jpa.repository.Query com.example.demo1.model.Pessoas]
    at org.springframework.core.convert.support.GenericConversionService.handleConverterNotFound(GenericConversionService.java:322) ~[spring-core-5.3.12.jar:5.3.12]
    at org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:195) ~[spring-core-5.3.12.jar:5.3.12]
1 resposta
solução!

Oi Gabriela,

Sua classe Pessoas é a entidade, certo?

Nesse tipo de consulta que você está tentando fazer você deve criar uma nova classe Dto, que representa os dados da consulta, e utilizar o recurso select new da JPA para montar a query.

Nesse vídeo, do curso 2 de JPA, é demonstrado como fazer esse tipo de consulta: https://cursos.alura.com.br/course/java-jpa-consultas-avancadas-performance-modelos-complexos/task/89335

Bons estudos!