У меня есть SQL-запрос, который объединяет три таблицы.Где я хотел бы выбрать все проекты для учетных записей пользователей.
т.е. дать мне все проекты для конкретного пользователя ...
Пользователь => Учетные записи (многие для многих), Учетные записи=> Проекты (от 1 до многих)
Пользователь => Учетные записи многих для многих управляются с помощью таблицы объединения.
Это мой SQL
select UA.user_id, m.PROJECT_ID, m.name, m.description
from Project AS m INNER JOIN Account
AS a on m.ACCOUNT_ID = a.ACCOUNT_ID
INNER JOIN User_Account UA ON a.ACCOUNT_ID = UA.ACCOUNT_ID
WHERE UA.USER_ID = ?1
, который возвращаетпроекты.
Я хочу преобразовать этот запрос в JPA QL, но на самом деле не знаю, с чего начать, кто-нибудь может помочь?
Спасибо
Решение:
select distinct p from Project, Account a, User u join a.projects p join u.accounts a where u.id = :id