2017-06-10 42 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"); 
相关问题