我在本地机器上有一个Solr实例,我正在通过浏览器中的管理界面访问它。Solr实例对于非模糊搜索是正确的(我每天都在广泛使用它)。
数据库中的一条记录是我自己的名字字段Barnaby和姓字段Dawson。另一条记录是带适当名字和姓氏字段的马库斯·唐宁。这里的资本化和书面的完全一样。数据库中还有十多个姓唐宁的人,而道森的姓氏也有类似的号码。在我感兴趣的所有记录中,还有一个字段IsHistorical设置为false。
下面是我用粗略的匹配数(准确和不准确)执行的搜索。
是历史的:假和姓:downing
许多匹配,其中许多是精确的。
是历史的:假的和姓:dawson
许多匹配,其中大多数是精确的。
是历史的:假和姓:downing~
许多匹配没有是精确的。
是历史的:假的和姓:dawson~
许多匹配,其中许多是精确的
是历史的:假的和名字:barnaby和姓氏:dawson~
一个匹配,这是正确的结果
是历史的:假的和名字:马库斯和姓氏:downing~
根本没有火柴
我执行了最后两次搜索与所有组合的第一个字母大写在姓氏和forename,并观察到没有差异的结果。我已经确保页面返回的行数足够大,足以看到返回的所有结果。查询是手工输入的。
我的问题是:为什么模糊搜索修饰语在搜索“downing”时会阻止我获得精确的匹配,而在搜索“dawson”时却不会停止?
我的最终目标是以一种模糊的方式组合在多个字段上匹配的查询,包括forename和姓氏。
发布于 2012-04-18 15:06:12
我的假设是,您在姓氏字段的模式中有了词干筛选器,并且下降到了向下。
模糊下给你这样的结果。我认为这是最好的,你删除这个领域的堵塞过滤器。
https://stackoverflow.com/questions/10211987
复制相似问题