【发布时间】:2017-06-06 22:49:36
【问题描述】:
是否可以使用 Hibernate Criteria 从同一个表中获得两个唯一的结果?例如,如果我想查询最近的车辆类型(卡车或汽车)怎么办。
Criteria criteria = getCurrentSession().createCriteria(Vehicle.class);
criteria.add(Restrictions.eq("vehicleType", "car")); // notice how I want a unique car AND truck
criteria.add(Restrictions.eq("vehicleType", "truck"));
criteria.add(Restrictions.le("date", date));
criteria.addOrder(Order.desc("date"));
criteria.setMaxResults(2);
Object result = criteria.uniqueResult(); // Possible to get most recent unique car and truck?
我想在一次查询中执行此操作,因为我假设对数据库的一次查询将比对数据库的两次查询更快。
所以换个说法,我怎样才能在一个 Hibernate Criteria Query 中获得最新的car 和最新的truck。假设car 和truck 用小数表示,所以表格可以按vehicleType 排序。
更具体地说,我想使用 hibernate 执行this。
【问题讨论】:
标签: hibernate criteria hibernate-criteria