2014-02-07 28 views
0

我有一个实体有两个字段:pointsA和pointsB。我想在pointsA + pointsB上排序。我如何订购动态查询中的两个字段的总和

我知道如何用自定义SQL做到这一点,但我想知道如何用DynamicQuery来做到这一点。

在Hibernate中,我将在标准创建别名:

criterion.createAlias("pointsA + pointsB", "totalPoints"); 
criterion.addOrder(Order.asc("totalPoints")); 
return criterion.list(); 

我无法找到如何与Hibernate的Liferay的包装做到这一点。

回答

0

好吧,让我们假设你想对表Download_Details cloumn日期时间(自定义表) 您可以像

DynamicQuery downDetDQ=DynamicQueryFactoryUtil.forClass(Download_Details.class) 
            .add(RestrictionsFactoryUtil.between("datetime", startDate, endDate)) 
            .add(OrderFactoryUtil.asc("datetime"))); 

列表listDetails = Download_DetailsLocalServiceUtil.dynamicQuery(downDetDQ)执行它的开始日期和结束日期之间的排序;我想这会解决你的目的