2017-02-15 1 views

Antwort

1

Was passiert, wenn Sie Ihre Abfrage wie unten haben, vorausgesetzt, dass Sie eine HTTP POST tun. Sie könnten einfach max Aggregationen von IHM verwenden, um den max Wert zu erhalten und Begriffe innerhalb aggs um die GROUP BY Funktion zu erledigen zu verwenden.

Anfrage:

IhrHost: 9200/your_index/_search

Anfrage Körper:

{ 
    "query": { 
     "query_string": { 
      "query": "checks > 0" <-- check whether this works, if not use the range query 
     } 
    }, 
    "aggs": { 
     "groupby_group": { 
      "terms": { 
       "field": "group" 
      }, 
    "aggs": { 
     "maximum": { 
      "max": { 
       "script": "doc['date'].value" 
      } 
     } 
    } 
    } 
} 
} 

Für checks > 0 Sie mit der range Abfrage auch gehen könnte innerhalb die Abfrage, die co uld wie folgt aussehen:

"range" : { 
     "checks" : { 
      "gte" : 0 
     } 
} 

This, die Sie auf die Ausführung Aggregationen helfen könnte. Aber bitte stellen Sie sicher, dass Sie Scripting von Ihrem elasticsearch.yml bevor Sie versuchen, die Abfrage aktiviert haben:

script.inline: on 

hoffe, das hilft!

Verwandte Themen