【问题标题】:Android Sqlite exclude fieldsAndroid Sqlite 排除字段
【发布时间】:2014-03-12 17:23:48
【问题描述】:

我正在尝试这个查询:

Cursor c = myDB.rawQuery("SELECT * FROM " + tableName + " WHERE Field5 NOT LIKE " + 
Arrays.toString(ALQu.toArray()).replace("[", "(").replace("]", ")") + 
"ORDER BY RANDOM() LIMIT 1", null);

但我收到以下错误:

03-12 18:12:34.469: E/AndroidRuntime(16604): android.database.sqlite.SQLiteException: near ",": syntax error: , while compiling: SELECT * FROM TableQ WHERE Field5 NOT LIKE (6, 9) ORDER BY RANDOM() LIMIT 1

我尝试排除已检查的字段。我将数据添加到 ArrayList 中。我看不出问题出在哪里。你能帮忙吗?

编辑:

是的,它是“NOT IN”,我不知道为什么我没有尝试,谢谢

【问题讨论】:

  • 我不认为 NOT LIKE (6, 9) 是 SQLite 有效的
  • 也许你的意思是“NOT IN (6, 9)”?

标签: android sqlite arraylist request


【解决方案1】:

将 NOT LIKE 更改为 NOT IN:

Cursor c = myDB.rawQuery("SELECT * FROM " + tableName + " WHERE Field5 NOT IN " + 
    Arrays.toString(ALQu.toArray()).replace("[", "(").replace("]", ")") + 
    "ORDER BY RANDOM() LIMIT 1", null);

【讨论】:

  • 如果我帮助了你,你能接受我的回答吗?谢谢
猜你喜欢
  • 2023-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-10
  • 1970-01-01
  • 2017-12-28
  • 2019-03-29
相关资源
最近更新 更多