Elasticsearch查询基于列表进行过滤

时间:2018-07-05 14:34:00

标签: python elasticsearch

让我们说我们在ES中有以下列表。 (每个列表都是单独的文档的一部分)

[1], [2], [1, 2], [1, 2, 3, 4]

如果我们使用列表 [1、2] 进行查询,则ES仅应返回以下结果。

[1], [2], [1, 2]

请注意,使用'条款查询'将返回 [1、2、3、4] ,这也不是预期的结果。

有人可以为这种情况建议ES查询吗?

1 个答案:

答案 0 :(得分:0)

如果将对象映射为嵌套数据类型,则可以搜索类似listValue的值,也可以是2的结果,它将在[1、2]或[2、1]上生成,因为ES无法处理简单数组中的订单

  

嵌套类型是对象数据类型的一种特殊版本,它允许对对象数组进行索引,从而可以相互独立地查询它们。

https://www.elastic.co/guide/en/elasticsearch/reference/6.3/nested.html