У меня есть следующая сущность для пользователя.
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>
Что я делаю не так на стороне весны / котлина, которая заставляет меня ничего не получать, когда я пытаюсь вызвать эту функцию?