【发布时间】:2017-09-08 05:04:55
【问题描述】:
我正在尝试在我的索引中查询某种类型的文档。
我们看下面的文档:
{
"id": 1,
"title": "My first Collection",
"items": [
{
"code": "SB",
"order": 1,
"random": "something random"
},
{
"code": "BB",
"order": 2,
"random": "something random"
},
{
"code": "FO",
"order": 3,
"random": "something random"
},
{
"code": "RA",
"order": 4,
"random": "something random"
},
{
"code": "FO",
"order": 5,
"random": "something random"
}
]
}
items 字段是 nested 字段。
我想查询所有符合确切模式的文章:
{
"items": [
{
"code": "SB",
"order": 1
},
{
"code": "BB",
"order": 2
},
{
"code": "FO",
"order": 3
},
{
"code": "RA",
"order": 4
}
]
}
查询的文档将包含具有此精确字段组合的所有这 4 个项目。但他们也可以拥有更多。上面描述的文档将匹配查询。
我搜索了整个文档,特别是在嵌套查询部分,但我没有找到任何让它工作的方法。
是否有可能或者我应该实现自己的算法/脚本?
编辑:
我尝试了以下但没有成功:
{
"query": {
"nested": {
"path": "items",
"query": {
"bool": {
"must": [
{
"query_string": {
"query": "items.code:SB AND items.order:1"
}
},
{
"query_string": {
"query": "items.code:BB AND items.order:2"
}
},
{
"query_string": {
"query": "items.code:FO AND items.order:3"
}
}
]
}
}
}
}
}
【问题讨论】:
标签: elasticsearch