== 检查两个字段 elasticsearch

== check on two fields elasticsearch

我有这样的场景需要检查两个字段是否相等。 假设我有一个索引 my_index with mapping

    "field_one": {
        "type": "text",
        "fields": {
          "keyword": {
            "type": "keyword",
            "ignore_above": 256
          },
          "regexkeyword": {
            "type": "keyword",
            "normalizer": "lowercase_normalizer"
          }
        },
        "analyzer": "simple"
      },
     "field_two": {
        "type": "text",
        "fields": {
          "keyword": {
            "type": "keyword",
            "ignore_above": 256
          },
          "regexkeyword": {
            "type": "keyword",
            "normalizer": "lowercase_normalizer"
          }
        },
        "analyzer": "simple"
      }

这里我需要写一个查询,通过匹配field_onefield_two来获取数据 这是我试过的

 {
 "script_fields": {
     "adas": {
        "script": {
           "inline": "'field_one.keyword' == 'field_two.keyword'",
           "lang": "painless"
         }
     }
 }

注意:弹性版本:5.5.3

我认为语法是,但我在 ES .X 中没有实例来测试它

{
 "script_fields": {
     "adas": {
        "script": {
           "inline": "doc['field_one.keyword'].value == doc['field_two.keyword'].value",
           "lang": "painless"
         }
     }
 }