solr排除查询

在我们使用solr进行查询,我们想在查询之前添加过滤条件,如我们在搜索时,想将某些结果排除掉,我们可以使用操作符 “-”进行排除查询,如:我们想查询电话本中的号码,但想排除135开头的号码,那么我们可以在135前加上 “- ”,但是“-”不能与查询项单独使用,否则会报错,如 phone:-13532244,这样在solr的客户端的fq中查询直接报错,可以在-135前添加* (*和空格)否则无法得到想要的结果

查询所有电话号码

查询1870218..的电话号码


排除1870218..开头的电话号码


如果条件这样会报错(- 不能单独与项进行操作)



 


 上面查询得到了结果,但是实际使用是 -field(查询的字段) : value(查询的值)

fieldQuery.addFilter("-field:value");
 


 

猜你喜欢

转载自shareisattitude.iteye.com/blog/2136304
今日推荐