2017-06-10 82 views
1

我需要顯示10個最佳分數的列表。 我用這個代碼來獲取數據,並把它放在一個ArrayList中如何在android中對sqlite數據庫進行排序

private ArrayList<String> getData() { 
    String[] columns = {DbHelper.COL_NAME, DbHelper.COL_SCORE}; 
    Cursor c = db.query(DbHelper.TABLE_NAME, columns, null, null, null, null, DbHelper.COL_SCORE, "10"); 
    int nameCol = c.getColumnIndex(DbHelper.COL_NAME); 
    int scoreCol = c.getColumnIndex(DbHelper.COL_SCORE); 
    for (c.moveToFirst(); !c.isAfterLast(); c.moveToNext()) { 
     scoresList.add(c.getString(nameCol) + " " + c.getString(scoreCol)); 
    } 

    return scoresList; 
} 

唯一的問題是其從最低得分最高的排序,我需要它扭轉。

+0

添加'ORDER BY得分DESC'條款(默認情​​況下,'ORDER BY'聲明,如果你指定'ASC'經營) –

回答

1

下面的查詢嘗試...

Cursor c = db.query(DbHelper.TABLE_NAME, columns, null, null, null, null, DbHelper.COL_SCORE +" DESC", "10"); 
相關問題