solr:如果field包含值,则使用filter

时间:2014-07-23 08:51:49

标签: search solr filter conditional-statements

尝试找到构建查询的解决方案,以便我可以过滤某些文档:

if category = xyz 
   -created:[* TO NOW-7DAY/DAY]
else 
   no filtering

这通常是可能的,还是在收到结果后我需要这样做? 如果可能的话,当然如何?

2 个答案:

答案 0 :(得分:2)

您可以查询所需的正确类别和时间顺序,也可以查询其他类别的文​​档,而不是第一次匹配所需的类别。

(category:xyz AND -created[* TO NOW-7DAY/DAY]) OR -category:xyz

答案 1 :(得分:1)

您正在寻找最近Solr的Switch parser。我还发表了an example that's used in multi-field advanced search。请注意,您可以打开特定值,(任意)值和缺失值的存在。