Lista de consultas de Hibernate dentro de un objeto

Tengo una clase

public class Human{

  @OneToMany
  private List<Pets> myPets;
  //other fields here.
}

¿Es posible consultar la clase humana y obtener el humano con la mayor cantidad de mascotas? ¿Puede Hibernate/HQL hacer esto o tengo que obtener manualmente todos los humanos y consultar la lista de mascotas que contienen? ¿si es así, cómo?

preguntado el 23 de abril de 13 a las 13:04

1 Respuestas

HQL le permite consultar el tamaño de una lista de la siguiente manera:

select max(h.myPets.size) from Human h

Por lo tanto, puede usar esto como una declaración interna para encontrar los objetos humanos cuyo tamaño de mascota sea igual al máximo:

from Human h where h.myPets.size = (select max(h2.myPets.size) from Human h2)

Respondido 23 Abr '13, 13:04

¿Puedes explicar tu código? Finalmente funcionó, pero una pequeña explicación no vendría mal. user962206

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.