2016-03-29 8 views
-1

私のアプリケーションでは、一番低い_ID番号を持つプライマリキーの_IDフィールドに従ってレコードを表示するリストビューがあります。それをどのように変更すればリストビューの中の最も高い_ID番号ですか?すなわち順序を逆転させる。リストビューの結果をSQliteから順番に変更する

現在、リストビューを生成しているdbクエリは以下のとおりです。ありがとう!

public Cursor fetch() { 
    String[] columns = new String[] { DatabaseHelper._ID, DatabaseHelper.SLOC, DatabaseHelper.FLOC, DatabaseHelper.DSNM, DatabaseHelper.SDATE, DatabaseHelper.STIME }; 
    Cursor cursor = database.query(DatabaseHelper.TABLE_NAME, columns, null, null, null, null, null); 
    if (cursor != null) { 
     cursor.moveToLast(); 
    } 
    return cursor; 
} 
+0

'... _id DESC' –

+0

BY ORDER query'方法 – pskink

答えて

2

使用このクエリ:

Cursor c = mDb.query(DATABASE_TABLE, rank, null, null, null, null, yourColumn+" DESC"); 
+0

恐ろしい'の最後のparamを参照してください! DatabaseHelper._ID + "DESC"が追加されました。システムは "ランク"を認識しませんでしたので、私はそれをクエリの "列"として保持しました。ありがとう! – MarcusRey

1

あなたはこのような任意のカスタムクエリをヒットするrawQueryメソッドを使用し、あなたが望むようORDER BYASCまたはDESCを追加することができます。

public Cursor fetch() { 

    String queryString = "SELECT * FROM tablename ORDER BY _id DESC" 

    Cursor cursor = sqLiteDatabase.rawQuery(queryString); 

    if (cursor != null) { 
     cursor.moveToLast(); 
    } 
    return cursor; 
} 
関連する問題