This is a silly question.
All I need to do is treat "aggs" like "size", "query", "_source" fields in
the json
"size" limits the number of queries that I will get in the end.
"aggs" aggregates the given query results accordingly.
So my resultant aggregation query would be
{
"query": {
"bool": {
"must": [
{
"range": {
"productPrice": {
"gte": 5000,
"lte": 10000
}
}
},
{
"range": {
"length": {
"gte": 50,
"lte": 100
}
}
}
]
}
},
"_source": [
"user"
],
"aggs": {
"unique_users": {
"terms": {
"field": "user"
}
}
}
}
Thank you.
On Friday, November 28, 2014 1:25:05 PM UTC+5:30, Anil Karaka wrote:
>
> My sample document looks like this,
>
> {
> "user": "adfasdk",
> "act": "Made Purchase",
> "productPrice": 5099"
> }
>
> What I want is all the unique users that satisfy a particular query.
>
> Say for example I have the query like below, that gets all the documents
> whose productPrice is between 5000 and 10000, and whose length is between
> 50, 100. The returned documents will have repeated "user"s. I just need
> all the unique users. Do I have calculate all the unique users from this
> result myself or is it possible to do using aggregation.
>
> {
> "query": {
> "bool": {
> "must": [
> {
> "range": {
> "productPrice": {
> "gte": 5000,
> "lte": 10000
> }
> }
> },
> {
> "range": {
> "length": {
> "gte": 50,
> "lte": 100
> }
> }
> }
> ]
> }
> },
> "_source": [
> "user"
> ]
> }
>
>
> Below aggregation aggregates all my documents,
> {
> "aggs": {
> "unique_users": {
> "terms": {
> "field": "user"
> }
> }
> }
> }
> Instead I want to put my query from above into my aggregation of unique
> users.. Is it possible? Or do I have to just do my normal query and
> calculate the unique users myself from the query result?
>
--
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/3e18a660-fb00-424b-b762-7bd9c52f679f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.