在天蓝色搜索中通过多个字段进行分组/分区

时间:2018-05-09 16:57:06

标签: azure-search

我想通过多个字段进行分组/分区,比如搜索索引中的“name”和“type”字段。是否可以在Azure搜索中使用。如果是这样,怎么办呢?

1 个答案:

答案 0 :(得分:0)

不可能通过多个字段的组合值进行分析。填充索引时,您必须自己对字段进行非规范化,然后通过非规范化字段进行分面。例如,如果您有“名称”和“类型”字段,则必须创建一个组合的“名称类型”字段,其中包含“名称”和“类型”的组合。然后,您将引用搜索请求的“facet”参数中的“nametype”字段。

如果你之前有这样的文件:

{ "id": "1", "name": "John", "type": "Customer" }

现在你将有一个这样的文件: { "id": "1", "name": "John", "type": "Customer", "nametype": "John; Customer" } (您可以在nametype的名称部分和类型部分之间使用您喜欢的任何分隔符。)

现在,当您搜索时,在请求中包含facet=nametype,您将获得索引中存在的“名称”和“类型”的所有组合的计数。