我试图只检索数据库表中not NULL
的数据,但是IS NOT NULL
子句似乎不起作用。还显示空字段。
String sql = "SELECT _id, nome_sotto FROM Categorie
WHERE nome_categoria = '"+i.getStringExtra("categoria")+"'
AND nome_sotto IS NOT NULL ORDER BY nome_sotto ASC";
private void list() {
SQLiteDatabase db = mHelper.getReadableDatabase();
final List<Dettaglio> dettagli = new ArrayList<Dettaglio>();
String sql = "SELECT _id, nome_sotto FROM Categorie
WHERE nome_categoria = '"+i.getStringExtra("categoria")+"'
AND nome_sotto IS NOT NULL ORDER BY nome_sotto ASC";
Cursor c = db.rawQuery(sql, null);
while (c.moveToNext()){
Dettaglio d = new Dettaglio();
d.id = c.getString(0);
d.sottocat = c.getString(1);
dettagli.add(d);
}
c.close();
db.close();
ListAdapter adapter....
}
最佳答案
Empty 与 null 不同。如果要过滤掉空值和空值,则需要添加:AND nome_sotto != ''
关于Android SQLite 选择 IS NOT NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26384808/