Vineeth! Thanks for your reply! I’ll try your solution,hope this can solve my problem.
Thanks && Best Regard! 在 2014年9月12日,0:12,vineeth mohan <[email protected]> 写道: > Hello , > > I don't feel you can do this in a single call. > What i have in mind would be > > Run a two level aggregation query with date histogram aggregation on first > level with date and term aggregation on second with sum aggregation on prize > field on second level. You might need to use nested aggregation also here. > Once you get the results , choose the dates based on the criteria , i.e. sum > of prize more than 300. With the dates you are interested in , fire the next > query which has all interesting date ranges as range query. > Thanks > Vineeth > > On Thu, Sep 11, 2014 at 5:04 PM, 闫旭 <[email protected]> wrote: > Anyone can help this? > > Thanks && Best Regard! > > 在 2014年9月11日,13:24,闫旭 <[email protected]> 写道: > >> Thank you ! But nested bool query can not plus all price with the data >> range. how can i do this?? >> >> Thx again. >> >> Thanks && Best Regard! >> >> 在 2014年9月11日,12:04,vineeth mohan <[email protected]> 写道: >> >>> Hello , >>> >>> >>> First you need to declare field details as nested. - >>> http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/mapping-nested-type.html#mapping-nested-type >>> >>> Then do a bool query with the date range constrain and range constrain >>> >>> Thanks >>> Vineeth >>> >>> On Thu, Sep 11, 2014 at 8:53 AM, 闫旭 <[email protected]> wrote: >>> Dear All! >>> >>> I have a problem with a complex nested query >>> the docs like this: >>> _id:1 >>> { >>> "detail":[ >>> { >>> "date":"2014-09-01", >>> "price”:50 >>> }, >>> { >>> "date":"2014-09-02", >>> "price”:100 >>> }, >>> { >>> "date":"2014-09-03", >>> "price":100 >>> }, >>> { >>> "date":"2014-09-04", >>> "price":200 >>> } >>> ] >>> >>> } >>> _id:2 >>> { >>> "detail":[ >>> { >>> "date":"2014-09-01", >>> "price":100 >>> }, >>> { >>> "date":"2014-09-02", >>> "price":200 >>> }, >>> { >>> "date":"2014-09-03", >>> "price":300 >>> }, >>> { >>> "date":"2014-09-04", >>> "price":200 >>> } >>> ] >>> >>> } >>> I will filter the docs with “date in [2014-09-01, 2014-09-03] and >>> sum(price) > 300”. >>> I only find some way with “aggregation”, but it can only stat the sum of >>> all docs. >>> >>> How Can I solve the problem?? >>> >>> >>> Thanks && Best Regard! >>> >>> >>> >>> -- >>> 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/A98354E4-9C9F-43B2-9310-6355DE3D6F85%40gmail.com. >>> For more options, visit https://groups.google.com/d/optout. >>> >>> >>> -- >>> 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/CAGdPd5kfRarPNNBctvYfHsk52tjD2rxv18aQGqq3Hz0i_2ZxVQ%40mail.gmail.com. >>> For more options, visit https://groups.google.com/d/optout. >> > > > -- > 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/F5848899-E506-470B-AA05-E6A2B1965986%40gmail.com. > > For more options, visit https://groups.google.com/d/optout. > > > -- > 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/CAGdPd5mH%2BSrgrkomvNh9-a-A5gDTjeXCO6DE8uWp32ruNbGPFA%40mail.gmail.com. > For more options, visit https://groups.google.com/d/optout. -- 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/CA49FB1A-E87E-4CB0-A5CF-355EF9C0147F%40gmail.com. For more options, visit https://groups.google.com/d/optout.
