5

我尝试了以下查询,但没有给出任何结果。

SELECT * FROM details WHERE name LIKE :name

我使用 AutoCompleteTextview 进行搜索。是否有任何查询可以找到子字符串?

4

3 回答 3

5

就像 MoinKhan 建议的那样,在发送到 Room 之前将通配符添加到字符串中对我有用。

query = "%"+query+"%";
于 2017-12-31T01:41:07.980 回答
2

||我最近遇到了这个问题,发现最好的解决方案是结合使用 Sql 字符串连接%来表示零、一个或多个数字或字符。

@Query("SELECT * FROM details WHERE name LIKE '%' || :name || '%'")
fun getDetails(name: String): details

这将获得名称包含我们正在寻找的名称的详细信息

同样,下面将找到以名称开头的匹配项

LIKE :name || '%'
于 2020-03-13T02:46:07.783 回答
-1

例子:

@Query("SELECT * FROM user WHERE first_name LIKE :firstName ")
User findByName(String firstName);

我认为您必须为“名称”使用不同的名称

于 2017-11-25T10:45:20.907 回答