# Between conditions into multiple array

**URL:** <https://discuss.elastic.co/t/between-conditions-into-multiple-array/14661>\
**Category:** Elasticsearch\
**Created:** [December 2, 2013, 4:14pm UTC](https://discuss.elastic.co/t/between-conditions-into-multiple-array/14661 "2013-12-02T16:14:33Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Yury\_Gugnin](https://avatars.discourse-cdn.com/v4/letter/y/35a633/32.png) [@Yury\_Gugnin](https://discuss.elastic.co/u/Yury_Gugnin)\
**Post date:** [December 2, 2013, 4:14pm UTC](https://discuss.elastic.co/t/between-conditions-into-multiple-array/14661/1 "2013-12-02T16:14:33Z")

</div>

Hi colleagues. I want to ask:  
I have a document

{  
"product\_id":1,  
"price":10,  
"action\_prices":[  
{  
"from": 1385766000,  
"to":1385938740.  
"price": 9.5  
},  
{  
"from": 1385938840,  
"to":1385939740.  
"price": 9.7  
}  
]  
}

I have to select / filter / order current price. No problem to select,  
using script\_fields

```
  "script_fields" : {            
        "current_price" : {
            "script" : "p = _source.price;foreach (price : 

```

\_source.action\_prices){if(price.from \<= NOW && price.to \>= NOW  
){p=price.price}};return p;",  
"params": {  
"NOW":1385991511 //CURRENT\_TIMESTAMP  
}  
}  
}

Question is: how can I filter documents using current\_price? something like  
this:

"query":{  
"filtered":{  
"query":{  
"match\_all": {}  
},  
"filter":{  
"numeric\_range": {  
"action\_prices.price ": {  
"gte":0,  
"lte":10000  
}  
}

```
        }            
    }        
}

```

P.S. Maybe I can add additional array element to index for non existing  
action prices? But how can I filter by this situation? I mean

"action\_prices":[  
{  
"from": 1385766000,  
"to":1385938740.  
"price": 9.5  
},  
{  
"from": 1385938840,  
"to":1385939740.  
"price": 9.7  
},  
{  
"from": 0,  
"to":_9999999999_.  
"price": _10_  
}  
]

Thank you so much.

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
To view this discussion on the web visit [https://groups.google.com/d/msgid/elasticsearch/7f00d550-919f-481f-bd9b-5d7eef057f64%40googlegroups.com](https://groups.google.com/d/msgid/elasticsearch/7f00d550-919f-481f-bd9b-5d7eef057f64%40googlegroups.com).  
For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).

---

<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:** [July 6, 2017, 2:03am UTC](https://discuss.elastic.co/t/between-conditions-into-multiple-array/14661/2 "2017-07-06T02:03:52Z")

</div>


