弹性搜索 - 如何选择'

时间:2016-05-19 09:06:22

标签: elasticsearch

自我解决。 :)

我做了弹性搜索映射,它有嵌套字段。

字段如下所示

id
name (nested field)

和数据类似

id   name
1    jone
1    jack
2    jane
2    kim
3    lee
3    park

我想得到父母已经说过的名字。 它类似于sql中的select name from table where id in ( select id from table where name ='jone')

我期望的结果是jone和jack。

它能够在弹性搜索中进行查询吗?

1 个答案:

答案 0 :(得分:0)

您可以在字段名称上使用聚合来获取所有不同的名称:

"query":{
    "term":{
        "id" : 1
    }   
},
"size":0,
"aggregations":{
    "group_by_name":{
        "terms": {
            "field": "name"
        }
    }
}