我正在使用以下内容从我的Android应用程序中搜索我的sqlite数据库:
数据库的行是:
ID - KEY_NUMBER - TYPE
Cursor cursor = db.rawQuery("select DISTINCT "+KEY_NUMBER+" from "+TABLE + " DESC", null);
但是如果
,我只想从KEY_NUMBER
列中提取不同的值
TYPE column!=another value
我该怎么做?我尝试插入Where
语句,但它没有用。
TYPE列可以是3个值中的一个:"type1","type2","type3"
如果TYPE!="type1"
或TYPE=="type2" || "type3"
答案 0 :(得分:2)
好的,那么WHERE
子句应如下所示:
WHERE TYPE IN ('type2', 'type3')
最后,整条线应该是这样的:
Cursor cursor = db.rawQuery("select DISTINCT " + KEY_NUMBER + " from " + TABLE + " WHERE TYPE IN ('type2', 'type3') ORDER BY KEY_NUMBER DESC", null);
答案 1 :(得分:0)
尝试删除DESC
关键字,然后添加where type != '<your_value>'
。您的查询应该是:
db.rawQuery("select DISTINCT "+KEY_NUMBER+" from "+TABLE + " where " + TYPE + " != '" + <value> + "'", null);
当此查询正常工作时,请添加排序子句:order by key_number
。它应该工作(至少它在MySQL数据库中工作)。
您可以在this link中看到sqlite数据库的select语法。
我希望这可以解决你的问题。