Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Solr父子查询_Solr - Fatal编程技术网

Solr父子查询

Solr父子查询,solr,Solr,我正在尝试根据父级和子级中的条件查询solr文档 指示使用以下查询: q= +title:join +{!parent which="content_type:parentDocument"}comments:SolrCloud 其中标题是父字段,注释是子字段。 这样的查询很好用。不过,我不能在这孩子身上附加任何其他条件。无论我试图在“}”后面放什么语句,它都会因SyntaxError而失败。比如说 q= +title:join +{!parent which="content_type:pa

我正在尝试根据父级和子级中的条件查询solr文档

指示使用以下查询:

q= +title:join +{!parent which="content_type:parentDocument"}comments:SolrCloud
其中标题是父字段,注释是子字段。 这样的查询很好用。不过,我不能在这孩子身上附加任何其他条件。无论我试图在“}”后面放什么语句,它都会因SyntaxError而失败。比如说

q= +title:join +{!parent which="content_type:parentDocument"}(comments:SolrCloud AND id:4)
与SyntaxError一起失败

我想我可以通过使用fq参数来使用变通方法,但我想知道是否可以在一个查询中实现

另外,我正在使用Solr 6.6,可以考虑升级到版本7。

您需要使用,基本上您的查询等于

q= +title:join +{!parent which="content_type:parentDocument" v='comments:SolrCloud'}
可以进一步改写:

q= +title:join +{!parent which="content_type:parentDocument" v=$qq}&qq=+comments:SolrCloud +whatever:ClauseYouWant

您使用的是哪个版本的Solr?谢谢,v参数可以工作,我可以提供复杂的参数集。但是,qq参数引用仍然失败,出现未定义的字段消息。架构中的字段是否具有您试图获取的名称?是的,我有。值得注意的是,即使是使用qq的最简单查询也会失败,而使用v参数的复杂查询也可以正常工作。