Java JPA Внутреннее СОЕДИНЕНИЕ с оператором WHERE - PullRequest
1 голос
/ 26 ноября 2009

Я хочу аннотировать следующую структуру:

У меня есть этот запрос:


SELECT A.*, BES.*, BES_2.*
INNER JOIN BES ON A.a = BES.a AND A.b = BES.b
INNER JOIN BES AS BES_2 ON A.a = BES_2.a AND A.b = BES_2.b
WHERE (BES.c = N'foo') AND (BES_2.c = N'bar')

У меня есть сущности Job (представляющие A) и JobEndPoint (представляющие BES). Объект Job должен содержать два JobEndPoint, которые отображаются как отношение один к одному. Мне нужно два JOIN таблицы два раза проверяя на те же значения, только отличается от столбца "C", который я проверяю в выражении WHERE.


@OneToOne
private JobEndPoint from;

@OneToOne
private JobEndPoint to;

Моя проблема в том, что столбцы базы данных и поля объектов сильно различаются, и я не знаю, как добавить оператор WHERE.

...