看起来非常简单的任务,尝试使用以下命令在 Android 应用程序中的 SQLite 数据库中获取给定范围的记录/行:
String[] projection = {"_id"};
String selection = "_id between ? and ?";
String[] selectionArgs = {"1", "10"};
queryBuilder.query(db, projection, selection, selectionArgs, null, null, null);
通过上面的选择参数,我只得到两行,即第 1 行和第 10 行。如果我将 arg 更改为其他任何内容,我将得到全部(整组记录/行),就好像没有条件一样。我已经敲了一天的头了,为什么它会这样工作,也许关于 SQLite 中“ Between”的使用有一些特殊的事情需要了解?非常感谢任何评论/帮助。
您可以使用此代码。
private SQLiteDatabase productDatabase;
public Cursor get_result(){
Cursor c;
String sql = "SELECT * FROM " + tableName +"WHERE _id BETWEEN" + value1 +"AND" + value2;
c = productDatabase.rawQuery(sql, null);
}
Cursor cursor=get_result();
if(cursor.moveToNext()){
Log.d("count of product id="+cursor.getString(0));
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)