在SOLR中,如何为两个不同的字段进行fq(过滤查询)?

时间:2013-02-06 14:41:07

标签: solr

我需要Filter Query来满足单独字段的两个不同条件。

我尝试了以下内容但没有效果

fq =“color:red AND type:book”

fq =“+ color:red + type:book”

我不能使用两个不同的fq,因为我正在使用的SOLRPHP lib设置的限制请求$ param [“fq”]作为单个参数。因此,我需要将一个查询传递给此函数。

我是Solr的新手所以请不要介意我是否遗漏了一些明显的东西。

2 个答案:

答案 0 :(得分:2)

尝试fq:(color:red AND type:book)fq:(+color:red +type:book)。通过在您的条件周围使用引号,您告诉Solr执行短语查询,因此它无法识别短语中的字段名称。

答案 1 :(得分:1)

您可能在使用SolrPHP API时遇到问题。

例如,使用SolrJ,它有利于传递fq,如query.set(“fq”,“fieldName:”+“\”“+ fieldValue +”\“”);请注意查询值周围的转义引号。

您可能需要查看Wiki或在Solr PHP讨论组https://groups.google.com/forum/?fromgroups#!forum/php-solr-client中提出您的问题