Solr:使用q和fq参数搜索文档

时间:2014-09-15 11:40:03

标签: solr solr-query-syntax

我的solr集合有以下字段

字段:

  • 专案编号
  • folderid
  • FILEID
  • 文件名

我想根据 projectid& amp;搜索特定文件。 folderid

哪一个使用

提供更多性能

1)

q:projectid:(PROJECTID) AND folderid:(FOLDERID)


2)

q:projectid:(PROJECTID)

fq:(folderid:FOLDERID)

感谢您在这里寻找,

2 个答案:

答案 0 :(得分:0)

在查询中使用fq比使用常规q参数更快。

答案 1 :(得分:0)

过滤查询对于加速复杂查询非常有用,因为使用fq指定的查询是独立于主查询缓存的。缓存意味着相同的过滤器再次用于以后的查询(即,有缓存命中)。对于缓存,请参阅:http://wiki.apache.org/solr/SolrCaching

可以在任何过滤器查询的顶层添加本地param cache = false,并使该过滤器不是预先生成并缓存,而是与查询和所有其他过滤器并行执行。这对于不会在其他请求中重复使用的过滤器(从而避免污染filterCache)以及为索引中的每个文档进行评估而非常昂贵的过滤器都是有益的。

Example: q:projectid:123&fq={!cache=false}folderid:FOLDERID

请查看此信息以获取更多信息:http://wiki.apache.org/solr/CommonQueryParameters