我有一个基于搜索引擎的网站,目前处于测试版模式http://www.jobportfolio.co.uk。该站点具有包含以下字段的作业表(job_company,job_title,job_description,job_location),除了作为文本字段的描述之外,所有字段都是Var。所有字段都被编入索引为FullText。
我目前的方法是根据标题,位置和公司进行搜索。这似乎工作正常,但我想通过在描述字段中添加来改进搜索结果。问题是当我添加描述字段时,搜索似乎需要更长的时间。即使只有一个只包含12000行的表,它似乎也很慢。
我正在使用以下MATCH AGAINST查询来选择结果
MATCH(job_posts.job_title, job_company) AGAINST('".$this->mysqli_escape($job_title)."' IN BOOLEAN MODE)
有没有人对如何提高搜索效果有任何意见?
答案 0 :(得分:0)
如果有人在“位置”字段中输入内容,则会向查询添加一个子句,该子句仅将搜索到的文本与位置字段匹配。
如果有人在“说明”字段中输入内容,则会在查询中添加一个子句,该子句与搜索文本相对应。否则,您与描述字段不匹配。
如果您不需要能够将文本输入到一个地方并搜索“所有可能的字段”,则此解决方案将防止特别想要在描述文本中搜索的人员。因此查询速度根据搜索者的需求而变化。