【发布时间】:2021-07-31 05:56:55
【问题描述】:
我有以下两个模型:
class Game {
private long id;
@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
private Set<Team> teams;
...
}
class Team {
private long id;
@ManyToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
private Set<User> members;
...
}
用户模型持有String username。
现在我想创建一个查询,当我将游戏和用户名作为参数传递时,该查询会产生团队:
public interface TeamRepository extends Repository<Team, Long> {
@Query("select t from Game g join Team t where g = :game and :username member of t.members")
Team findTeamByUserInGame(Game game, String username);
}
但我不知道如何将 Game 表与 Team 表连接起来,以及如何检查用户名是否在成员中。有什么帮助吗?
【问题讨论】:
-
你用 spring-data-jpa 和 spring-data-jdbc 标记了这个问题。是哪一个?
标签: sql spring spring-data-jpa