# Compare two fields in same document without using script

**URL:** <https://discuss.elastic.co/t/compare-two-fields-in-same-document-without-using-script/263955>\
**Category:** Elasticsearch\
**Created:** [February 11, 2021, 6:51am UTC](https://discuss.elastic.co/t/compare-two-fields-in-same-document-without-using-script/263955 "2021-02-11T06:51:25Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![sardar\_nale](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sardar_nale/32/83759_2.png) [@sardar\_nale](https://discuss.elastic.co/u/sardar_nale)\
**Post date:** [February 11, 2021, 6:51am UTC](https://discuss.elastic.co/t/compare-two-fields-in-same-document-without-using-script/263955/1 "2021-02-11T06:51:25Z")

</div>

Hi all,

We are using elastic version 7.10.2. I want to compare two fields from a same document.Scripting is disabled in my organization.  
Kindly help in building below query without using script.  
Here my query is : nickname is null or nickname is empty or nickname is equal to firstname.

Hard part is how to build query to get the records which have nickname is equal to firstname

Relevant script query to be converted to normal query :

```auto
{
  "query": {
    "bool": {
      "must": [{
        "script": {
          "script": {
            "inline": "doc['nickname.keyword'].value==null || doc['nickname.keyword'].value =='' || doc['nickname.keyword'].value == doc['firstname.keyword'].value",
            "lang": "painless",
            
          }
        } 
      }]
    }
  }
}

```

---

<div class="post-metadata">

**Author:** ![Christian\_Dahlqvist](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/christian_dahlqvist/32/4617_2.png) [@Christian\_Dahlqvist](https://discuss.elastic.co/u/Christian_Dahlqvist)\
**Post date:** [February 11, 2021, 7:53am UTC](https://discuss.elastic.co/t/compare-two-fields-in-same-document-without-using-script/263955/2 "2021-02-11T07:53:14Z")

</div>

Comparing fields within a document as far as I know requires scripting. The only way around this would be to add another field that indicates whether the two fields are equal or not, but while that may work for a specific case it is not a general solution.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [March 11, 2021, 7:53am UTC](https://discuss.elastic.co/t/compare-two-fields-in-same-document-without-using-script/263955/3 "2021-03-11T07:53:49Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
