我有一个用户的以下实体。
data class User(
@Id
var userId: UUID,
val orgId: UUID,
@ManyToMany
var representatives: MutableList<User>
)
表如下:
USER USER_REPRESENTATIVES
--USER_ID --USER_USER_ID
--ORG_ID --REPRESENTATIVES_USER_ID
一个用户可以有许多代表,也可以是另一个用户本身的代表。我想创建一个查询,该查询将为我提供当前用户所代表的用户列表。
在我的h2控制台中,当我使用以下查询时,我可以使用以下查询实现我想要的结果:
SELECT USER_USER_ID FROM USER_REPRESENTATIVES
WHERE EXISTS (
SELECT USER_ID FROM USER
WHERE USER_REPRESENTATIVES.REPRESENTATIVES_USER_ID = USER.USER_ID)
然而,当我尝试在我的jpa存储库中实际运行它时,调用本身并没有任何回报。以下是我在存储库中使用的代码:
@Query(value = "SELECT USER_USER_ID FROM USER_REPRESENTATIVES " +
"WHERE EXISTS ( " +
"SELECT USER_ID FROM USER " +
"WHERE USER_REPRESENTATIVES.REPRESENTATIVES_USER_ID = USER.USER_ID)",
nativeQuery = true)
fun getUserRepresentativeFor(): MutableList<UUID>
我在spring/kotlin方面做错了什么?当我尝试调用这个函数时,我什么也得不到?