我正在构建一个数据库来存储一些问题的答案,包括Answer,Tag,Tagmap,3个表格。答案记录可以有多个用于搜索的标签。 Tagmap链接答案和标签。 该应用程序允许用户输入要搜索的字符串,例如" 2014年数学部分a"。我在php中使用explode将字符串拆分为数组,然后使用关键字LIKE创建我的sql语句。做像a一样,可能会返回所有记录。搜索相应答案记录的正确方法是什么。抱歉我的英文!
答案 0 :(得分:0)
您应该忽略太短的输入,例如少于3个字符。因此a
会被忽略,但您可以搜索aaa
。但是你也应该排除一些常见的词语"没有任何意义"例如英语为the
或德语为der
,die
,das
。
因此,如果用户输入2014 math part a
,我只会搜索2014
,math
和part
。
此外,您应该考虑让用户选择一些标签,以减少在您执行"扩展"之前搜索关键字的答案数量。 like %keyword%
的搜索。