2015-10-06 6 views

ответ

1

Что вы Размещенное родной запрос SQL. Прежде чем вы сможете перевести это на использование API критериев, нам нужно сначала узнать о ваших классах Entity и его свойствах.

Вот пример:

@Entity 
public class UserGamePlay { 
    private Long userId; 
    private Long totalScore; 
    ... 
} 

HQL:

SELECT ugp.userId, SUM(ugp.totalScore) 
FROM UserGamePlay ugp 
GROUP BY ugp.userId 
ORDER BY SUM(ugp.totalScore) 

Критерии:

List results = session.createCriteria(UserGamePlay.class) 
    .setProjection(Projections.projectionList() 
     .add(Projections.property("userId"), "userId") 
     .add(Projections.sum("totalScore"), "score") 
     .add(Projections.groupProperty("userId"), "userId") 
    ) 
    .addOrder(Order.asc("score")) 
    .list(); 
+0

Спасибо много ... это работает для меня... –

Смежные вопросы