Elasticsearch Query DSL for complex searching.
Match¶
GET /articles/_search
{
"query": {
"match": {
"title": "elasticsearch tutorial"
}
}
}
Bool¶
{
"query": {
"bool": {
"must": [{"match": {"content": "kubernetes"}}],
"filter": [
{"term": {"tags": "devops"}},
{"range": {"published_at": {"gte": "2024-01-01"}}}
]
}
}
}
Aggregations¶
{
"size": 0,
"aggs": {
"by_tag": {"terms": {"field": "tags", "size": 20}},
"avg_views": {"avg": {"field": "views"}}
}
}
Query DSL = Powerful¶
Bool queries + aggregations cover most needs.
elasticsearchqueriessearch