Android 使用sqlite查询搜索具有多个关键字的数据库
我使用了类似于以下代码的代码来搜索数据库人名:Android 使用sqlite查询搜索具有多个关键字的数据库,android,sqlite,android-sqlite,Android,Sqlite,Android Sqlite,我使用了类似于以下代码的代码来搜索数据库人名: cursor.query(select column from Table where column_person_Name="John"); 但是现在我想一起搜索几个人的名字,怎么做?使用OR操作符 SELECT column1, column2, ... FROM table_name WHERE condition1 OR condition2 OR condition3 ...; 这里是一个例子 cursor.rawQuery("sel
cursor.query(select column from Table where column_person_Name="John");
但是现在我想一起搜索几个人的名字,怎么做?使用OR操作符
SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;
这里是一个例子
cursor.rawQuery("select column from Table where column_person_Name='John' OR column_person_Name='Bob');
使用OR运算符
SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;
这里是一个例子
cursor.rawQuery("select column from Table where column_person_Name='John' OR column_person_Name='Bob');
您可以在条件下使用
SELECT *
FROM Table
WHERE column_person_Name IN ('Name1', 'Name2', 'Name3');
您可以在
条件下使用
SELECT *
FROM Table
WHERE column_person_Name IN ('Name1', 'Name2', 'Name3');
您的问题的其他解决方案可以是,使用like
关键字,根据搜索得到多个结果
Like用于应用程序的部分已知数据
SELECT
column_list
FROM
table_name
WHERE
column_1 LIKE %yoursearch_word%;
您的问题的其他解决方案可以是,使用like
关键字,根据搜索得到多个结果
Like用于应用程序的部分已知数据
SELECT
column_list
FROM
table_name
WHERE
column_1 LIKE %yoursearch_word%;
使用SQlite的方法是在
中使用:
SELECT * FROM persons WHERE name IN ("John", "Doe");
在Java中,如果有一个字符串数组,您可以这样做:
final String[] namesArray = {"John", "Doe"};
// Pad the Strings with quotes: John -> 'John'
for (int i = 0; i < namesArray.length; i++) {
namesArray[i] = "'" + namesArray[i] + "'";
}
// Join the Strings: 'John', 'Doe'
final String names = TextUtils.join(",", namesArray);
final String query = "SELECT * FROM persons WHERE name IN ("+names+")";
使用SQlite的方法是在
中使用:
SELECT * FROM persons WHERE name IN ("John", "Doe");
在Java中,如果有一个字符串数组,您可以这样做:
final String[] namesArray = {"John", "Doe"};
// Pad the Strings with quotes: John -> 'John'
for (int i = 0; i < namesArray.length; i++) {
namesArray[i] = "'" + namesArray[i] + "'";
}
// Join the Strings: 'John', 'Doe'
final String names = TextUtils.join(",", namesArray);
final String query = "SELECT * FROM persons WHERE name IN ("+names+")";
文件室支持将集合作为查询参数
房间中的查询类似于:
@Query("SELECT first_name, last_name FROM user WHERE region IN (:regions)")
public List<NameTuple> loadUsersFromRegions(List<String> regions);
@Query(“从区域所在的用户(:regions)中选择first\u name和last\u name”)
公共列表加载用户来自区域(列表区域);
检查导向装置 Room支持将集合作为查询参数
房间中的查询类似于:
@Query("SELECT first_name, last_name FROM user WHERE region IN (:regions)")
public List<NameTuple> loadUsersFromRegions(List<String> regions);
@Query(“从区域所在的用户(:regions)中选择first\u name和last\u name”)
公共列表加载用户来自区域(列表区域);
检查导向装置 你是说你有一个名字列表,你想得到所有与其中一个名字匹配的结果吗?@MarkusPenguin哦,对不起,我想搜索名字列表你是说你有一个名字列表,你想得到所有与其中一个名字匹配的结果吗?@MarkusPenguin哦,对不起,我想搜索名字列表