【发布时间】:2021-02-26 06:11:49
【问题描述】:
我需要从角色 ID = 2 的用户表中检索用户。这就是实体之间的关系。
下面的 MySQL 查询完美运行。并检索 role_id = 2 的用户。
select * from users INNER JOIN user_roles ON users.id = user_roles.user_id INNER JOIN roles ON roles.id = user_roles.role_id WHERE role_id='2';
但我需要在 Spring Boot 应用程序中执行此操作,这是实现的存储库。
@Query("select usr from User usr INNER JOIN user_roles ur "+
"ON usr.id = ur.user_id INNER JOIN Role roles " +
"ON roles.id = ur.role_id WHERE ur.role_id='2' AND usr.department=(:depId)")
List<User> findAll(@Param("depId") Long depId);
但 user_roles 不是实体,上面的查询不起作用。是否有解决方案或任何其他方式来实现我的目标?
【问题讨论】:
标签: mysql spring-boot jpa