0

我想要使​​用 Crieteria 基于单个属性值的唯一记录,请告诉我这样做的方法是什么。

4

2 回答 2

0

用这个:

            criteria.setProjection(Projections.distinct(Projections.property("yourProperty")));
            List result = criteria.list();

或者,如果您想要整行,您可以使用 detachedCriteria:

            DetachedCriteria dt = DetachedCriteria.forClass(yourClass.class);
            dt.setProjection(Projections.distinct(Projections.property("yourProperty")));

            criteria.add(Subqueries.propertyIn("yourProperty", dt));
            criteria.list();
于 2013-02-20T12:01:09.583 回答
0
Criteria c = session.createCriteria(Pojo.class);
criteria.setProjection(Projections.distinct(Projections.property("property")));
List list = criteria.list();
于 2013-02-20T12:26:31.933 回答