[英]Hibernate criteria Alias with projection minus second projection
我需要按最大字段“ timeStop”減去最小字段“ timeStart”對分組的對象進行排序。 像這樣:
ProjectionList projList2 = Projections.projectionList();
projList2.add(Projections.alias(Projections.max("timeStop") - Projections.min("timeStop"), "tim"));//Compilation error
Criteria criteria = sess.createCriteria(Call.class);
criteria.addOrder(up ? Order.asc("tim") : Order.desc("tim"));
我怎樣才能做到這一點?
使用sqlProjection
Projections.projectionList()
.add(Projections.sqlProjection("MAX(timeStop) - MIN(timeStop) AS tim",
new String[] { "tim" }, new Type[] {IntegerType.INSTANCE}));
休眠類型可以在org.hibernate.type包中找到
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.