使用Solr的:5.5.3,Java 7中Solr的:查询Parent和Child文档
我已经获取所有项目:盖子和Size_s:XL,借助方面:COLOR_s和SIZE_s。 此项目是父文件的一部分,大小是子文档的一部分。我曾想过使用BlockJoin,但我无法理解如何同时查询父母和孩子。
希望得到任何帮助和指导。谢谢。
<add>
<doc>
<field name="id">1</field>
<field name="type_s">forSaleItem</field>
<field name="item">Shirt</field>
<doc>
<field name="id">11</field>
<field name="type_s">itemAttrDoc</field>
<field name="COLOR_s">Red</field>
<field name="SIZE_s">XL</field>
<field name="PRICE_i">6</field>
</doc>
<doc>
<field name="type_s">itemAttrDoc</field>
<field name="id">12</field>
<field name="COLOR_s">Red</field>
<field name="SIZE_s">XL</field>
<field name="PRICE_i">7</field>
</doc>
<doc>
<field name="type_s">itemAttrDoc</field>
<field name="id">13</field>
<field name="COLOR_s">Blue</field>
<field name="SIZE_s">L</field>
<field name="PRICE_i">5</field>
</doc>
</doc>
<doc>
<field name="id">2</field>
<field name="type_s">forSaleItem</field>
<field name="item">Cap</field>
<doc>
<field name="type_s">itemAttrDoc</field>
<field name="id">21</field>
<field name="COLOR_s">Blue</field>
<field name="SIZE_s">XL</field>
<field name="PRICE_i">6</field>
</doc>
<doc>
<field name="type_s">itemAttrDoc</field>
<field name="id">22</field>
<field name="COLOR_s">Blue</field>
<field name="SIZE_s">XL</field>
<field name="PRICE_i">7</field>
</doc>
<doc>
<field name="type_s">itemAttrDoc</field>
<field name="id">23</field>
<field name="COLOR_s">Red</field>
<field name="SIZE_s">L</field>
<field name="PRICE_i">5</field>
</doc>
</doc>
<doc>
<field name="id">3</field>
<field name="type_s">NotforSaleItem</field>
<field name="item">trouser</field>
<doc>
<field name="type_s">itemAttrDoc</field>
<field name="id">21</field>
<field name="COLOR_s">Blue</field>
<field name="SIZE_s">XL</field>
<field name="PRICE_i">6</field>
</doc>
<doc>
<field name="type_s">itemAttrDoc</field>
<field name="id">22</field>
<field name="COLOR_s">Blue</field>
<field name="SIZE_s">XL</field>
<field name="PRICE_i">7</field>
</doc>
<doc>
<field name="type_s">itemAttrDoc</field>
<field name="id">23</field>
<field name="COLOR_s">Red</field>
<field name="SIZE_s">L</field>
<field name="PRICE_i">5</field>
</doc>
</doc>
</add>
编辑: type_s标识的文档,那么任何的查询也应包含这一领域。
您可能会在[Solr Block Join Parser Documentation]中找到您的问题的答案(https://cwiki.apache.org/confluence/display/solr/Other+Parsers#OtherParsers-BlockJoinQueryParsers) –