我有一个用SQLite数据库编写的数据表,我想根据ROWID检索它,例如第3行?我试过了SELECT * FROM TABLE WHERE ROWID=3;
,但那不起作用。
编辑:我希望实现的是在不使用LIMIT
函数的情况下仅检索第3行。我以为我可以使用ROWID实现这一点,但我发现我无法做到这一点。
答案 0 :(得分:1)
尝试使用光标:
Cursor cursor = db.rawQuery("select * from " + YOUR_TABLE + " where ROWID = 3", null)
String info = cursor.getString(cursor.getColumnIndex(YOUR_COLUMN_NAME));
//repeat this for all your different columns (different strings or just append to info depending on what you want achieve
cursor.close() //remember to close the cursor
答案 1 :(得分:1)
SELECT * FROM TABLE_NAME LIMIT 1 OFFSET 2
LIMIT
它根据number_rows指定要返回的结果集中的有限行数。
OFFSET
可选的。 LIMIT返回的第一行将由offset_value确定。