elasticsearch - 如何在 ElasticSearch 的嵌套类型上使用 "script fields"?

标签 elasticsearch dsl

我想做这样的事情,使用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 中的嵌套类型上使用“脚本字段”?”。

最佳答案

这个脚本应该可以工作:

"script_fields": {
    "custom_field": {
        "script": {
            "lang": "painless",
            "source": "params['_source']['comments'].size()"
        }
    }
}

关于elasticsearch - 如何在 ElasticSearch 的嵌套类型上使用 "script fields"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36261875/

相关文章:

elasticsearch - Elasticsearch 7.7 版本中跨多个索引的查询

jquery - 如何使用 mongoosastic + AJAX 进行即时搜索?

php - 将 match_all 与过滤器一起使用

Elasticsearch 查询结果过多

grails - IntelliJ 中使用 GroovyDSL 进行动态方法定义

Ruby:在需要子类文件时如何捕获和解析未定义的方法

elasticsearch - Elasticsearch 中实际存储的规范

java.lang.IllegalStateException : Received message from unsupported version: [2. 0 .0] 最低兼容版本是 : [5. 0.0]

uml - 领域特定语言与领域特定建模语言

java - 如何使用 apache Camel dsl 删除 csv header