The Hibernate Criteria count distinct is used to count the number of distinct records in a table. Following a way to use it in a program
Criteria criteria = session.createCriteria(Student.class); ProjectionList projList = Projections.projectionList(); projList.add(Projections.countDistinct("name")); criteria.setProjection(projList); List list=criteria.list();
CriteriaCountDistinct.java
package net.roseindia.main; import java.util.List; import net.roseindia.bean.Student; import net.roseindia.util.HibernateUtil; import org.hibernate.Criteria; import org.hibernate.Session; import org.hibernate.criterion.ProjectionList; import org.hibernate.criterion.Projections; public class CriteriaCountDistinct{ public static void main(String []args){ Session session = HibernateUtil.getSessionFactory().openSession(); Criteria criteria = session.createCriteria(Student.class); ProjectionList projList = Projections.projectionList(); projList.add(Projections.countDistinct("name")); criteria.setProjection(projList); List list=criteria.list(); System.out.println(list.get(0)); } }
select count(distinct this_.name) as
y0_ from student this_ No of Distinct Record is 4 |
Advertisements
Ads
Ads