现在的情况:搜索使用match_phrase进行查询,根据公司的注册资金进行排序。
存在问题:如果打错一个字,就搜索不出想要的结果。如:搜“万刻企业股份有限公司”,就搜索不到“万科企业股份有限公司”
目的:进行模糊搜索,但是要把全部命中的排在前面,命中90%接着100%的后面,命中80%接着90%后面。
用solr就可以实现,ES不知如何实现。求社区大神解答。
现在的情况:搜索使用match_phrase进行查询,根据公司的注册资金进行排序。
存在问题:如果打错一个字,就搜索不出想要的结果。如:搜“万刻企业股份有限公司”,就搜索不到“万科企业股份有限公司”
用solr就可以实现,ES不知如何实现。求社区大神解答。
首先不应该用
match_phrase
进行搜索,match_phrase
是为了搜索一些精确的短语的关键词搜索,所以每一个词都会被当做必须要匹配的词.这里可以考虑使用match来进行搜索,使用类似于ik-analyzer这类中文分词器进行分词