如何在ElasticSearch中的嵌套类型上使用“脚本字段”?

问题描述 投票:4回答:1

我想做这样的事情,使用script_fields来显示评论的长度。

{
   "script_fields" : {
      "comments" : {
         "script" : "doc['comments'].values.size()"
     }
   }
}

但是注释是嵌套类型。看起来像

{
   "comments": [
         {
             "k": "2016-01-06T00:00:03",
             "v": "v1 "
         },
         {
             "k": "2016-01-06T00:00:04",
             "v": "v2"
         }
   ]
}

所以我想知道“如何使用”脚本字段“在ElasticSearch中的嵌套类型?”。

elasticsearch dsl
1个回答
1
投票

这个脚本应该工作:

"script_fields": {
    "custom_field": {
        "script": {
            "lang": "painless",
            "source": "params['_source']['comments'].size()"
        }
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.