gpt4 book ai didi

android - sqlite中的多参数查询

转载 作者:行者123 更新时间:2023-11-29 19:46:00 50 4
gpt4 key购买 nike

我在 sqlite 中有一个包含 4 列(id、组、描述、状态)的表。当我的 where 子句只是一个字段时,我可以在此表上进行查询,如下所示:

public Question readQuestion(long _id) {String[] columns = new String[]{"id", "group", "description", "status"};
String selection = "id=?";
String[] selectionArgs = new String[]{String.valueOf(_id)};
String groupBy = null;
String having = null;
String orderBy = null;
String limit = null;
database = sqLiteOpenHelper.getWritableDatabase();
Cursor cursor = database.query("my_table", columns, selection, selectionArgs, groupBy, having, orderBy, limit);
.......etc.....
}

但我的问题是当我必须对 2 或 3 列进行查询并且其中一两个可能为 NULL 时。例如,当我的 GROUP 字段使用 (A、B 或 null) 进行搜索并且使用 (1,2 或 null) 进行 STATUS 搜索时。我认为它在“selection”和“selectionArgs”中,但我不知道如何计算。提前致谢。

最佳答案

你可以试试这个。

String selection = "( id=? || id=? || id=? ) && ( status =? || status=? || status=? )";
String[] selectionArgs = new String[]{"1","2",null,"A","B",null};

或者

String selection = "id IN ( ?,?,? ) && status IN (? ,? ,? )";
String[] selectionArgs = new String[]{"1","2",null,"A","B",null};

关于android - sqlite中的多参数查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37698079/

50 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com