我想从我的数据库中获取不同的值。
我在这个数据库中有 10 个字段,当我尝试使用这样的查询时:
SELECT DISTINCT (IMIE)FROM `przychodzace`
我得到 26 个结果,但 hibernate 只返回 17...
这是列表函数:
List<String> list = new ArrayList<String>();
SessionFactory sf = HibernateUtil.getSessionFactory();
Session session = sf.openSession();
Criteria criteria = session.createCriteria(PrzychodzaceModel.class);
if (i == 0) {
criteria.setProjection(Projections.distinct(Projections.property("imie")));
criteria.addOrder(Order.asc("imie"));
}
list = criteria.list();
System.out.println(list.size() + "size");
return list;
有谁知道如何正确地做到这一点,我已经尝试了很长时间来纠正它。 提前致谢。
最佳答案
我认为您的问题的替代方法是使用带有 List 方法的 DAO 类,例如:
public List listMenu() {
String hql = "FROM Menu";
org.hibernate.Query query = session.getCurrentSession().createQuery(hql);
query.setFirstResult(0);
query.setMaxResults(5);
List results = query.list();
return results;
}
关于java - hibernate 选择不同的值按一个值排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20894009/