我正在尝试获取最后3个数据库条目。我使用以下代码,但我只得到最后一个条目而不是最后一个。
String query = "Select * from " + TABLE_DETAILS + " DESC limit 3;";
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor = db.rawQuery(query, null);
if (cursor.moveToFirst()) {
cursor.moveToFirst();
System.out.println(Integer.parseInt(cursor.getString(2)));
cursor.close();
} else {
}
db.close();
由于
答案 0 :(得分:4)
您需要使用光标循环以获取所有结果行,例如而不是
if (cursor.moveToFirst()) {
...
像这样循环
while (cursor.moveToNext()) {
System.out.println(cursor.getString(2));
}
cursor.close();
要更改排序,请在查询中添加ORDER BY <expression>
,例如
SELECT ... ORDER BY _id DESC LIMIT 3