# Multiplication and division query

**URL:** <https://discuss.elastic.co/t/multiplication-and-division-query/358787>\
**Category:** Elasticsearch\
**Tags:** elastic-stack-monitoring\
**Created:** [May 6, 2024, 7:16am UTC](https://discuss.elastic.co/t/multiplication-and-division-query/358787 "2024-05-06T07:16:17Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![orlenkoda5](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/orlenkoda5/32/117648_2.png) [@orlenkoda5](https://discuss.elastic.co/u/orlenkoda5)\
**Post date:** [May 6, 2024, 7:16am UTC](https://discuss.elastic.co/t/multiplication-and-division-query/358787/1 "2024-05-06T07:16:17Z")

</div>

Good day evetyone. I have a question in making a query wich will count multiplication of value of two fields and then division of this multiplication on third field.  
Example of data in index:

```auto
{
        "_index" : "instruments",
        "_type" : "_doc",
        "_id" : "643265",
        "_score" : null,
        "_source" : {
          "emShortName" : "Credit Agricole SA",
          "emitent" : 545419,
          "nominalCurr" : "GBP",
          "expared" : false,
          "ticker" : "CRAGgp",
          "adfrontType" : "eurobonds",
          "allowNonQualInvest" : false,
          "emCode" : "CRAG",
          "boardName" : "ECL counting in GBP",
          "hellGroup" : "Bonds",
          "universalExchangeId" : 3,
          "cupPeriod" : 0,
          "lot" : 1,
          "universalMarketCode" : "EUCL_GBP",
          "isEnabled" : true,
          "actId" : 46781,
          "cupSize" : 3.0,
          "currency" : "GBP",
          "matDate" : "2100-01-01",
          "isin" : "FR0010575654",
          "assetCode" : "FR0010575654",
          "nkdCurr" : "GBP",
          "faceUunit" : 378207,
          "riskCurrency" : "GBP",
          "isTradeAccess" : false,
          "isLiquidBoard" : true,
          "hellType" : "BondsCoupon",
          "nkd" : 0.0,
          "isDefaultUniversalExchange" : true,
          "objectId" : 571980,
          "displayGroup" : 2,
          "name" : "Credit Agricole SA",
          "nominal" : 50000.0,
          "adfrontGroup" : "Bonds",
          "bondTypeName" : "Corporate",
          "idfi" : 643265,
          "dailyPiPercent" : 0.0,
          "price" : 88.54,
          "yield" : 12.52,
          "sessionDate" : "2024-05-06"
        }

```

Example of counting fields: cup\_yield (counted field) = cup\_size\*price/nominal.  
I need to get this counted field in a search query with filter. For example, by "bondType".  
It will be great if someone help to make this query. Thank you.

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [May 6, 2024, 8:43am UTC](https://discuss.elastic.co/t/multiplication-and-division-query/358787/2 "2024-05-06T08:43:11Z")

</div>

I think this is one of the examples where ES|QL shines a lot:

```auto
row price=88.54, nominal=50000.0, cupSize=3.0
| eval cup_yield=cupSize*price/nominal

```

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/d/0/d07166978cf78bb9d44019bbf96d5f0424eb31b3.png)

But otherwise you can use a runtime field: [Define runtime fields in a search request | Elasticsearch Guide [8.13] | Elastic](https://www.elastic.co/guide/en/elasticsearch/reference/current/runtime-search-request.html)
