我需要过滤器查询来满足单独字段上的两个不同条件。
我尝试了以下但没有奏效
fq="颜色:红色和类型:书"
fq="+color:red +type:book"
我不能使用两个不同的 fq,因为这是我使用的 SOLRPHP 库设置的限制,它请求 $param["fq"] 作为单个参数。因此我需要将一个查询传递给这个函数。
我是 Solr 的新手,所以请不要介意我遗漏了一些明显的东西。
我需要过滤器查询来满足单独字段上的两个不同条件。
我尝试了以下但没有奏效
fq="颜色:红色和类型:书"
fq="+color:red +type:book"
我不能使用两个不同的 fq,因为这是我使用的 SOLRPHP 库设置的限制,它请求 $param["fq"] 作为单个参数。因此我需要将一个查询传递给这个函数。
我是 Solr 的新手,所以请不要介意我遗漏了一些明显的东西。
尝试fq:(color:red AND type:book)
或fq:(+color:red +type:book)
。通过在条件周围使用引号,您是在告诉 Solr 执行短语查询,因此它无法识别短语中的字段名称。
您可能会遇到有关 SolrPHP API 的问题。
以 SolrJ 为例,像这样传递 fq 是有益的 query.set("fq", "fieldName:" + "\"" + fieldValue + "\""); 请注意查询值周围的转义引号。
您可能想查看 wiki 或在 Solr PHP 讨论组https://groups.google.com/forum/?fromgroups#!forum/php-solr-client中提问