我尝试了以下查询,但没有给出任何结果。
SELECT * FROM details WHERE name LIKE:name
我使用AutoCompleteTextview进行搜索。是否有查询子字符串?
答案 0 :(得分:3)
像MoinKhan建议的那样,在发送到Room之前将通配符添加到字符串为我工作。
query ="%" + query +"%";
答案 1 :(得分:1)
我最近遇到了这个问题,发现最好的解决方案是将Sql字符串串联||
与%
结合使用,该字符串代表零个,一个或多个数字或字符。
@Query("SELECT * FROM details WHERE name LIKE '%' || :name || '%'")
fun getDetails(name: String): details
这将获取详细信息,其中名称包含我们正在寻找的名称
类似地,以下内容将找到以名称开头的匹配项
LIKE :name || '%'
答案 2 :(得分:-1)
示例:
@Query("SELECT * FROM user WHERE first_name LIKE :firstName ")
User findByName(String firstName);
我认为你必须为" name" 使用不同的名称。