MST

星途 面试题库

面试题:ElasticSearch搜索中脚本字段的基础应用

请描述在ElasticSearch搜索中,如何创建一个简单的脚本字段来计算文档中两个数值字段的和,并举例说明对应的查询语句。
24.4万 热度难度
数据库ElasticSearch

知识考点

AI 面试

面试题答案

一键面试

在ElasticSearch搜索中,可以通过script_fields来创建简单的脚本字段。假设文档中有两个数值字段field1field2,要计算它们的和,以下是具体做法:

  1. 查询语句示例
{
    "query": {
        "match_all": {}
    },
    "script_fields": {
        "sum_field": {
            "script": {
                "source": "doc['field1'].value + doc['field2'].value"
            }
        }
    }
}

上述查询语句中:

  • query部分使用match_all匹配所有文档。
  • script_fields部分定义了一个新的脚本字段sum_field,它通过script中的source来计算field1field2字段值的和。在实际应用中,需将field1field2替换为真实的字段名称。