如何解决如何仅基于该记录的部分匹配来返回记录?
| 我已经对我认为很容易的问题进行了很多研究,但是找不到我想要的东西。我只是想返回一条记录作为匹配项,而只与该记录中部分文本的搜索词匹配。 例如,如果用户搜索\“ ed \”,我希望返回任何包含\“ ed \”的记录。因此,如果在名称列中有一个名为“爱德华”的记录,它将作为匹配项返回。如果描述中存在带有“已完成”的记录,则该记录也将作为匹配项返回。 我已经研究了全文搜索,但是不确定是否这是我需要做的事情,或者甚至可以满足我的需要。 和往常一样,我不是在说一个答案,而是在寻找一个方向。解决方法
以前从未使用过SQLite,但是它具有\“ LIKE \”运算符吗?
在MySQL中,您可以执行以下操作:
SELECT name FROM list WHERE name LIKE \'%ed%\';
,
如果您查询内容提供者,则以下代码将执行您想要的操作。如果直接查询sqlite数据库对象,则参数相似但不同。
String search = \"ed\";
// surround it with the SQL wildcard \'%\'
String q = \"%\" + search + \"%\"
Cursor c = getContentResolver().query(uri,new String[] { column1,column2 },\"column_name like ?\",new String[] { q },null);
该代码段将在ѭ2search搜索内容提供商,以查找column_name
中的字符串ed。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。