Home Hibernate Hibernate Max() Function (Aggregate Functions)
Questions:Ask|Latest

 
 

Share on Google+Share on Google+

Hibernate Max() Function (Aggregate Functions)

Advertisement
In this section, we will show you, how to use the Max() function. Hibernate supports multiple aggregate functions.

Hibernate Max() Function (Aggregate Functions)

     

In this section, we will show you, how to use the Max() function. Hibernate supports multiple aggregate functions. When they are used in HQL queries, they return an aggregate value ( such as avg(...), sum(...), min(...), max(...) , count(*), count(...), count(distinct ...), count(all...) ) calculated from property values of all objects satisfying other query criteria. 

Following is a aggregate function (max() function) with their respective syntax.

max( [ distinct | all ] object.property)

The Max() function aggregates the maximum value of the given column. 

Table Name: insurance

ID insurance_name invested_amount investement_date
2 Life Insurance 25000 0000-00-00 00:00:00
1 Givan Dhara 20000  2007-07-30 17:29:05
3 Life Insurance  500 2005-10-15 00:00:00
4 Car Insurance   2500 2005-01-01 00:00:00
5 Dental Insurance 500 2004-01-01 00:00:00
Life Insurance 900 2003-01-01 00:00:00
Travel Insurance  2000  2005-02-02 00:00:00

Here is the java code to retrieve the maximum value of "invested_amount" column from insurance table:

package roseindia.tutorial.hibernate;

import java.util.Iterator;
import java.util.List;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class HibernateHQLMaxFunction {

  /**
 * mail_mevinod@yahoo.co.in
 */
  public static void main(String[] args) {
  // TODO Auto-generated method stub

  Session sess = null;
  try {
  SessionFactory fact = new 
Configuration
().configure().buildSessionFactory();
  sess = fact.openSession();
  String SQL_QUERY = "select 
max(investementAmount)from Insurance insurance"
;
  Query query = sess.createQuery(SQL_QUERY);
  List list = query.list();
  System.out.println("Max 
Invested Amount: " 
+ list.get(0))
  sess.close();
  }
  catch(Exception e){
  System.out.println(e.getMessage());
  }
  }
}

Download this code.

Output:

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).

log4j:WARN Please initialize the log4j system properly.

Hibernate: select max(insurance0_.invested_amount) as col_0_0_ from insurance insurance0_

Max Invested Amount: 25000

Advertisement

If you enjoyed this post then why not add us on Google+? Add us to your Circles



Liked it!  Share this Tutorial


Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Posted on: February 27, 2008

Related Tutorials

Ask Questions?    Discuss: Hibernate Max() Function (Aggregate Functions)   View All Comments

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments
Masud Ikbal
September 19, 2011
HQL Max() Function: Null Exception

I'm getting Null exception during line 2: Query query = session.createQuery(SQL_QUERY); List list = query.list(); please advice me what to do?
Masud Ikbal
September 19, 2011
HQL Max() Function: Null Exception

I'm getting Null exception during Line 2: Query query = session.createQuery(SQL_QUERY); List list = query.list(); Please advice me what to do?
subbu
January 19, 2012
hibernate

Ask Questions Discuss: Hibernate Function Post your Comment Your Name Your Email Subject Your Comment Reload Image
Selvini
August 3, 2012
Feedback on Max()

Material is really helpful for beginners..!!! Thanks a lot ! In the query, String SQL_QUERY = "select max(insurance.investementAmount)from Insurance insurance"; alias name i.e., insurance should be used .
DMCA.com