Try looking at range JSON facets: https://lucene.apache.org/solr/guide/8_2/json-facet-api.html#range-facet. If you facet over the eventTimeStamp with a gap of 1 day, you should then be able to use a sub facet to return a min and max value (https://lucene.apache.org/solr/guide/8_2/json-facet-api.html#stat-facet-functions) for each day bucket.

On 08/01/2020 11:07, Mohamed Azharuddin wrote:
Hi team,

We are migrating from mysql to apache solr since solr is fast in searching. Thank you. We had a scenario to

*find 1) difference (max-min)*
    *        2) with group by date(timeStamp)*

Given below is our mysql table :
Untitled.png

And mysql query is,
*/SELECT Date(eventTimeStamp), MAX(field) - MIN(field) AS Energy FROM PowerTable GROUP BY DATE(eventTimeStamp);/*

will results,
Untitled2.png

So we have to calculate difference per day, where date column is in datetime format where we are using result grouping as */group=true&group.query=eventTimeStamp:[2019-12-11T00:00:00Z TO 2019-12-11T23:59:59Z]&group.query=eventTimeStamp:[2019-12-12T00:00:00Z TO 2019-12-12T23:59:59Z]/*

Using Apache solr statistics option, we are able to calculate max and min for whole result, But we need max and min value per day basis.
Untitled31.png

When we try to get max and min value per day basis, we are able to fetch either min or max using following query.
*/&group.sort=event1 desc or &group.sort=event1 asc/*
*/
/*
Untitled6.png

But we need both min and max in single query.

So kindly help us to go ahead.

--

    Regards,
    Azar@EJ

Reply via email to