Solr在列中进行了多方面的搜索

时间:2014-08-19 17:52:35

标签: solr

我需要对特定列进行分面搜索并在其结果中向下钻取。

这是我的架构。

State ZipCode PersonName
CA    12345   Tom
CA    12345   Mike
CA    23458   John
CA    23458   Lucy

我尝试编写构面查询

http://localhost:8983/solr/query?facet=on&facet.field=State and it facets only based on State.

如何在其中包含Zip代码,以便我可以根据State& amp;邮政编码

1 个答案:

答案 0 :(得分:1)

您可以通过两种方式执行此操作,具体取决于您的需要。

如果您只想包含ZipCode方面,除了州方面,add another facet.field parameter&facet.field=ZipCode。这样,您就可以在回复中获得两个字段的方面。将根据查询结果和筛选查询修改构面,因此,如果用户首先选择State,则fq =将使ZipCode构面仅返回该状态内的构面值。您可能还想查看Tagging and excluding filters,如果您想显示所有州的统计数,而不管目前是否选择了一个。

另一个选择是使用facet.pivot来获取具有构面值的二维表;对于每个州,获取该州的邮政编码。 &facet.pivot=State,ZipCode