solr 全匹配 包含 搜索

前言:

先说下困扰我两年的一个问题:如何在搜索时把完全包含搜索内容的信息优先匹配出来(即score最大),这个问题我一有时间就在研究、请教专家,网上有的解决方案无非是“*搜索内容*”,笨想这也不科学,所以一直没有采用,直到一次solr中国群主给了我一个简单的回复:”搜索内容”~10,回复虽简单,却给我指明了方向。~代表模糊查询,那后面的系数为什么是10 ? 经过测试,我发现不同的查询内容对应不同的系数,当然,系数不是越大越好,经过一系列的研究,得出了一下结论,分享给同被困扰的小伙伴,共勉!

解决办法:

首先说下text_general,会将所有单个汉字做为一个词存储,我解决这个问题就用了这个类型。使用了这个类型后进行搜索时,”搜索内容”~0,代表0编辑距离搜索,即和搜索内容完全匹配、包含的信息才会被搜索出来。

就说到这里吧,具体模糊搜索原理大家可以通过我这个解决办法去反推,也可以找官方解释,其他的设置不同权重或是搜索出多种结果应该很简单了。

猜你喜欢

转载自lang330965445.iteye.com/blog/2290211
今日推荐