SOLR - 如何对布尔值进行模糊搜索

时间:2010-07-14 18:58:55

标签: solr lucene fuzzy-search

如果我的索引包含三个布尔字段:a,b和c ...
我想搜索:“a = True,b = False,c = True”,SOLR应该返回所有条目,它们的分数应该表示整个查询的匹配程度。

e.g。

a=T, b=F, c=T, score=1.0  
a=T, b=T, c=T, score=0.6  
a=T, b=T, c=F, score=0.5  

可能吗?

1 个答案:

答案 0 :(得分:3)

假设true = 1,false = 0,有几个想法:

  • 使用客户端中相应的提升构建每个组合,例如:

    (a:1 AND b:0 AND c:1) OR (a:1 OR b:1 OR c:1)^0.6 OR...
    
  • 使用dist function query,例如:dist(1, a,b,c, 1,0,1)(需要Solr 1.5+)(我没有使用过这个,你可能需要multiply这个-1)< / p>