J'ai une entité public class GroupUser {Group g; Utilisateur u; } Comment puis-je récupérer uniquement les clés primaires de tous les utilisateurs. (c'est-à-dire la liste de u.getId() pour une requête où vous récupérez tous les utilisateurs qui appartiennent à un groupe). Je ne veux pas chercher toute la ligne, car il semble prendre plus de temps en ce momentComment puis-je récupérer uniquement les clés primaires à partir d'une table?
1
A
Répondre
2
si vous avez besoin de la requête, il est assez simple
select u.Id from User u
et le mettre dans une collection de longue
1
Vous voudrait utiliser hql.
http://docs.jboss.org/hibernate/core/3.3/reference/en/html/queryhql.html
2
Dans une requête HQL, vous pouvez utiliser la propriété id
de se référer à la clé primaire d'une entité (en supposant qu'elle ne définit pas une propriété non-pkey appelé « id », bien sûr). Ainsi, vous pouvez limiter une requête HQL avec une clause select comme si:
select u.id
from Groups g inner join Users u
où la jointure interne exclut les utilisateurs qui ne font pas partie d'un groupe. Bien sûr, vous pouvez également appliquer des contraintes standard à cette requête.