Sql JPA命名查询在列表中搜索

Sql JPA命名查询在列表中搜索,sql,jpa,jpa-2.0,Sql,Jpa,Jpa 2.0,我有一个与用户有一对多关系的组。(一个组可以有零个或1个以上的用户) 我要编写一个jpa查询,如果它没有附加用户,或者如果它确实有与我的id匹配的用户,则返回一个组 例如,如果组1包含用户1和用户2。组2不包含任何用户 如果我是用户3,我只想返回组2 如果我是用户2,那么我想返回组1和组2 我可以在JPA中这样做吗?我知道JPQL的是空的部分,所以我可以得到返回的组2,而不考虑用户。我的问题是如何在列表中查询 任何指针都可以 谢谢你的帮助,我想我已经得到了。答案是左键加入列表 比如说 SELEC

我有一个与用户有一对多关系的组。(一个组可以有零个或1个以上的用户)

我要编写一个jpa查询,如果它没有附加用户,或者如果它确实有与我的id匹配的用户,则返回一个组

例如,如果组1包含用户1和用户2。组2不包含任何用户

如果我是用户3,我只想返回组2

如果我是用户2,那么我想返回组1和组2

我可以在JPA中这样做吗?我知道JPQL的是空的部分,所以我可以得到返回的组2,而不考虑用户。我的问题是如何在列表中查询

任何指针都可以


谢谢你的帮助,我想我已经得到了。答案是左键加入列表

比如说

SELECT g FROM Groups g left join fetch g.users u where (g.users IS EMPTY OR (u.id = :id))
组是我的实体,它包含用户列表