如何在Elasticsearch中从数组中搜索数据的前缀?

Xie*_*fei 6 arrays prefix elasticsearch

这里我有几个文档存储在Elasticsearch中。

document_example: { "data": ["红色","棕色", "黑色"] }

当我使用前缀搜索(见下文)检查数组“data”中是否存在前缀为“b”的某些项目时,结果为 null,而 document_example 存在于 Elasticsearch 中。

前缀搜索似乎可用于字符串,但排除了数组中的项目。

{"query": 
    {
      "prefix": { "data" : "b" }
    }
}
Run Code Online (Sandbox Code Playgroud)

那么如果我想在数组中找到数据的前缀,我应该如何在Elasticsearch中搜索?谢谢。

and*_*era -1

您只需在查询中使用通配符即可;这在供应商文档中显示: https: //www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-wildcard-query.html