【发布时间】:2015-12-02 12:05:55
【问题描述】:
我是 Elastic Search (1.7) 的新手。 我有一个客户端版本的 ES 索引。
每个客户端都有一个唯一的 ID (client_id)。
有很多版本的客户端可以在索引中。
每个版本的客户端都有一个唯一的客户端 ID (version_id)。
索引数据示例:
{
“client_id”: "1",
"version_id": "1",
“versionCreationDate”: "2015-11-06T10:02:22.597Z",
“clientName”: “FirstName LastName”
}
…,
{
“client_id”: "1",
"version_id": "n",
“versionCreationDate”: …
“clientName”: “FirstName LastName”
},
{
“client_id”: "2",
"version_id": "1",
“versionCreationDate”: …
“clientName”: “FirstName LastName”
},
…
{
“client_id”: "2",
"version_id": "n",
“versionCreationDate”: …
“clientName”: “FirstName LastName”
},
…
{
“client_id”: "N",
"version_id": "1",
“versionCreationDate”: …
“clientName”: “FirstName LastName”
},
…
{
“client_id”: "N",
"version_id": "n",
“versionCreationDate”: …
“clientName”: “FirstName LastName”
}
我需要通过输入参数找到客户端的版本进行查询:
clientName>, VersionCreationDateMax>.
客户端的版本应该匹配 clientName>(模糊=auto)。并且任何版本都必须具有此客户端的 versionCreationDate 最大值,但 VersionCreationDateMax>。所以每个客户端的唯一版本应该在搜索结果中(最新,但不超过 VersionCreationDateMax>)
请帮助我找到过滤器/查询来做到这一点
【问题讨论】:
标签: search elasticsearch filter grouping fuzzy-search