Android SQLite如何使用where子句?

时间:2015-02-13 07:47:11

标签: android sqlite

在下面的代码中,我从我的表中选择KEY_ROWID = 12,但现在我需要选择大于12但小于20的KEY_ROWID。我可以在下面的查询中指定where子句。

  mDb.query(true, SQLITE_TABLE, new String[] {
                KEY_ROWID     }, 
                KEY_ROWID + "=?" 
                new String[] {"12"},
                null, null, KEY_ITEM , null);     

我不想写rawQuery。

2 个答案:

答案 0 :(得分:2)

尝试此查询

mDb.query(true, SQLITE_TABLE, new String[] {
            KEY_ROWID     }, 
            KEY_ROWID + " > ? AND " + KEY_ROWID + " < ?",
            new String[] {"12", "20"},
            null, null, KEY_ITEM , null);

答案 1 :(得分:1)

像这样更改您的查询

mDb.query(true, SQLITE_TABLE, new String[] {
            KEY_ROWID     }, 
            KEY_ROWID + ">12 AND "+KEY_ROWID+ " <20", 
            null,
            null, null, KEY_ITEM , null); 

mDb.query(true, SQLITE_TABLE, new String[] {
        KEY_ROWID     }, 
        KEY_ROWID + " >? AND " + KEY_ROWID + " <?",
        new String[] {""+12, ""+20},
        null, null, KEY_ITEM , null);