Android How to - Get maximum value in database for given condition








The following code shows to get maximum value in database for given condition.

Example

import org.xmlpull.v1.XmlPullParser;
//from  www.  j ava 2  s  .  c o m
import android.content.Context;
import android.content.res.XmlResourceParser;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;


public class DbUtils {

  private SQLiteDatabase mDb;
  private Context mContext;

  private static final String TAG = DbUtils.class.getSimpleName();
  /** Get maximum value in database for given condition **/
  public static int getMax(SQLiteDatabase db, String table, String column, String whereClause, String[] whereArgs) {
    Cursor cursor = db.query(table, new String[] { column }, whereClause, whereArgs, null, null, column + " ASC");
    if (cursor.moveToFirst()) {
      int maxValue = cursor.getInt(cursor.getColumnIndex(column));
      return maxValue;
    } else {
      cursor.close();
      return -1;
    }
  }

}