@JB Nizet спасибо за исправление, я поспешно отредактировал это. Я не пробовал вышеупомянутый запрос самостоятельно. Вы уверены, что JPA может присоединиться, как вы описали? Не стесняйтесь редактировать мой ответ для меньшего количества ошибок, или просто отправьте свой собственный, основанный на моем ...

я есть следующееJPA лица:

@Entity
class UserClient{
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private long id;
}

@Entity
class UserAccess{
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private long id;

    @ManyToOne(optional = false, cascade = { CascadeType.REFRESH })
    private UserClient user;

    @Temporal(TemporalType.TIMESTAMP)
    private Date accessTs;
}

Теперь я хотел запуститьJPQL запрос, чтобы получить список пользователей с их последней датой доступа. К сожалению, следующий запрос не возвращает пользователей, которые никогда не обращались к системе, т. Е. Существуют вUserClient таблица, но нет записи вUserAccess один.

SELECT ua.user, MAX(ua.accessTs) FROM UserAccess ua RIGHT JOIN ua.user

Я что-то пропустил? Это правильное использование RIGHT JOIN?

Я использую последнюю версию Hibernate JPA (4.0.0.CR1)

Ответы на вопрос(1)

Ваш ответ на вопрос