Consultar em uma coleção
01/10/2012 04:33
0
Blz pessoal,
estou querendo fazer uma consulta relativamente simples, mas não estou conseguindo. Tenho uma coleção de sala de aula e em cada sala tenho coleção de alunos. Como podeira fazer para saber qual o aluno mais velho de cada classe? Em rails faria algo +- assim sala.alunos.group(:idade).order(:idade).last e com grails como poderia fazer ? Valeu
Tags: Consulta


0
Olá, Alcelso.

Poderia detalhar a modelagem dessas 2 entidades pra facilitar?

Abraços.


0
Na verdade foi só um modelo que pensei na hora da duvida, mas seria uma escola onde cada sala teria uma coleção de alunos e dentro no método tenho uma coleção das salas. Percorrendo esta coleção seria ao do tipo
Rails:
Sala.all.seach do |sala|

aluno_maior_idade = sala.alunos.group(idade).order(:idade).last.idade
end

Como seria com grails, para saber a maior idade de cada sala?
Esta duvida é só a nível de estudo...


0
Ah, se eu entendi, então seria:


def alunos = Sala.list().collectAll{
Aluno.findByBairro(it,[sort:'idade', order:'desc'])
}
// seu objeto *alunos* é a lista de alunos com a maior idade em cada uma das salas


Não testei mas acho que funciona.

Talvez tenha como fazer com uma só consulta, com criteria e agrupamentos, mas se essa não for uma consulta feita com muita frequencia no seu código, essa solução não traz problemas de performance.



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto