我在使用嵌套字段进行搜索时遇到了问题。
例如我的文件是:
{
"chat": [
{
"messages": [
{
"id": "61",
"text": "some text here"
},
{
"id": "62",
"text": "some62 text62 here62"
},
{
"id": "63",
"text": "some63 text63 here63"
},
{
"id": "64",
"text": "some64 text64 here64"
}
]
}
]
}
我正在搜索messages.text。如果我搜索
"text": "some"
{
"query" : {
"nested": {
"path": "messages",
"query": {
"bool": {
"must": [{
"match": {
"text": "some"
}
}]
}
}
}
}
}
我希望输出类似
{
"chat": [
{
"messages": [
{
"id": "61",
"text": "some text here"
}
]
}
]
}
而不是整个文件。我想我应该使用嵌套属性,因此聊天中的消息被映射为"嵌套"。 请有人帮助我。
答案 0 :(得分:0)
答案是" Elasticsearch目前不支持该功能。您需要更改为父/子文档才能仅返回相关文档。"从这里https://groups.google.com/forum/#!topic/elasticsearch/Y9o9Vz8BT1s