Thank you Alexander. The first possibility is what we ended up doing for 
now. We plan on looking into the aggregations framework as a replacement 
once we upgrade to elasticsearch 1.0 so we don't need to return thousands 
of documents to the client.

Thank you.

On Monday, January 20, 2014 1:19:08 AM UTC-8, Alexander Reelsen wrote:
>
> Hey,
>
> you could execute a query, sorted by price and in the same request execute 
> a statistical facet for the price field and then check in your client for 
> each hit being returned, if it is above the average value returned by the 
> statistical facet.
>
> You could also do this in two roundtrips, getting the statistical average 
> from the facet first and then executing a second query filtering only for 
> products with a price higher than the average.
>
>
> --Alex
>
>
> On Fri, Jan 17, 2014 at 12:43 AM, Kevin Pearson 
> <[email protected]<javascript:>
> > wrote:
>
>> I am wondering if there is a way to use aggregated values inside a query.
>>
>> Example:
>> Say our data contains items and their price:
>> {
>>      "id" : string
>>      "name" : string
>>      "price" : float
>> }
>>
>> I want to do a query that returns the top items that have a price far 
>> from the average price of items with the same name.
>>
>> Example Data:
>> *ID      |  Name  |    Price*
>> 1        |  Chair   |   5.99
>> 2        |  Chair   |   5.99
>> 3        |  Chair   |   59.99
>> 4        |  Desk   |   61.00
>> 5        |  Desk   |   60.00
>> 6        |  Desk   |   59.99
>>
>> The top response would be ID 3, since 59.99 is way higher than the 
>> average price for a chair.
>>
>> I believe I need to write a custom score script, but I am not sure how I 
>> can get a reference to the average of items with the same name.
>>
>> Thank you,
>> Kevin
>>
>> -- 
>> 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 [email protected] <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/elasticsearch/8069763d-9ce2-4dfc-afc5-6293c2171828%40googlegroups.com
>> .
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>
>

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/769a6c3d-749d-4311-904d-7f51a37f648d%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to