Как создать JPA-запрос, который возвращает элемент и массив связанных элементов - PullRequest
0 голосов
/ 04 марта 2020

У меня есть связь Один ко многим между элементами RequestEntity и ResultEntity. Один запрос может иметь несколько результатов, и я хочу вернуть их все без повторения RequestEntity каждый раз, сейчас у меня есть это:

@Query("SELECT p, s FROM  RequestEntity p  left JOIN ResultEntity s on s.result = p.id where p.user = :user AND p.id = :id")
Object[] getRequestEntityByIdAndUser(@Param("id")  String Id, @Param("user")  String user);

Этот запрос возвращает:

[[{RequestEntity1} {ResultEntity1}], [{RequestEntity1} {ResultEntity2}], ...]

Есть ли способ вернуть его: без повторения тех же данных? например:

[{RequestEntity1}, [{ResultEntity1}, {ResultEntity2}, ...]]

1 Ответ

0 голосов
/ 04 марта 2020

Не то, что я хотел, но работает как задумано. Я только что сделал 2 звонка в базу данных и объединил их:

public Object[] getRequest(String user, String id) {
Set<ResultEntity> results = resultRepository.findResultEntityByResult(id);
    Object req = requestRepository.getRequestEntityByIdAndUser(id, user);
    Object[] obj = new Object[] { results, req};
return obj;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...