Contar e agrupar registros

5 respostas
R

Bom dia,

Estou precisando realizar uma busca que agrupe os registros iguais do campo ‘x’, contando a quantidade de cada um deles.
Qual a forma mais rápida e prática de se fazer?

A busca não pode ser muito demorada, pensei em fazer por trigger jogando em uma nova tabela com os nomes de ‘X’ com a soma de cada, e pensei também pelo hibernate…
comecei a fazer pelo hibernate mas ele me devolvia um arraylist e não tava conseguindo acessar o mesmo… até criei um tópico sobre isso aqui e me perdi por não conseguir dar continuidade…

Podem me dar uma luz?

5 Respostas

Hebert_Coelho

select count(0), nome from pessoa group by nome
ele vai te retornar uma lista com esses valores.

R

obrigado pela tentativa mas você não respondeu minha pergunta…
fazer select eu sei

Hebert_Coelho

rmaragno:
obrigado pela tentativa mas você não respondeu minha pergunta…
fazer select eu sei

Bem, eu respondi baseado nisso aqui que vc disse:

rmaragno:
Estou precisando realizar uma busca que agrupe os registros iguais do campo ‘x’, contando a quantidade de cada um deles.
Qual a forma mais rápida e prática de se fazer?

guilhermehkr

Entendi sua pergunta.
Cara, eu deixaria dentro da aplicação este controle, não colocaria em trigger …

É ótimo fazer pelo Hibernate, mas é estranho você não ter acesso a o arraylist retornado.
Se você fez a query certinha e ele retornou objetos, não tem porque não vingar esta consulta.

Eu faria pelo hibernate, mas a comunidade pode ter uma opinião diferente.

Abraços.

R
guilhermehkr:
Entendi sua pergunta. Cara, eu deixaria dentro da aplicação este controle, não colocaria em trigger ...

É ótimo fazer pelo Hibernate, mas é estranho você não ter acesso a o arraylist retornado.
Se você fez a query certinha e ele retornou objetos, não tem porque não vingar esta consulta.

Eu faria pelo hibernate, mas a comunidade pode ter uma opinião diferente.

Abraços.

eu não consigo é manipular esse arrayList que retorna...
pq vem um array de objects, não consigo(não sei) acessar cada uma dessas posições...

o método de busca é esse:
Criteria criterio = getSession().createCriteria(Levantamentos.class);  
    ProjectionList list = Projections.projectionList();  
            list.add(Projections.groupProperty("ujaResp"), "nomeDaUja");  
            list.add(Projections.count("ujaResp"), "quantidadePendencias");  
            criterio.setProjection(list);  
  
    }

quais são minhas possibilidades p/ acessar esse array list de retorno?
eu tentei apenas pelo: Transformers.aliasToBean e me perdi no processo...

Criado 2 de janeiro de 2012
Ultima resposta 2 de jan. de 2012
Respostas 5
Participantes 3