вопрос в спящем режиме - PullRequest
0 голосов
/ 12 марта 2011

У меня проблема с запросом Hibernate, в основном это выглядит так ...

У меня есть объект User, с которым связан набор объектов Class. Объекты класса имеют startDate (java.util.Date).

В моем пользовательском интерфейсе пользователь отображает только startDate, которая является начальной датой самого раннего класса.

Как мне создать запрос Hibernate, который будет возвращать список пользователей с начальной датой в пределах диапазона?

Изначально я думал, что это будет что-то вроде ...

"from User u where :beginRange < u.startDate < :endRange"

... но проблема в том, что u.startDate не сохраняется в базе данных, он динамически определяется только для представления.

Любая помощь или указатели в правильном направлении с благодарностью!

Спасибо, грабят

Ответы [ 2 ]

1 голос
/ 12 марта 2011

Не проверено, но что-то вроде этого должно работать:

from User u where (select min(c.startDate) from Clazz c where c.user.id = u.id) between :beginRange and :endRange
0 голосов
/ 12 марта 2011

Примерно так:

SELECT u 
FROM User u JOIN u.classes c 
HAVING MIN(c.startDate) BETWEEN :beginRange AND :endRange
GROUP BY u.id, ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...