Elasticsearch 查询和聚合查询:基本语法和统计数量
GET /_search
{
"query": {
"bool": {
"must": [
{ "match": { "title": "Elasticsearch" }},
{ "match": { "content": "Elasticsearch" }}
],
"filter": {
"range": {
"date": {
"gte": "2014-01-01",
"lt": "2015-01-01"
}
}
}
}
},
"aggs": {
"distinct_authors": {
"terms": {
"field": "author",
"size": 10
}
}
},
"size": 0
}
这个Elasticsearch查询语句使用了布尔查询(bool query)来合并match
查询来匹配title
和content
字段中包含"Elasticsearch"的文档。同时,它使用了一个范围过滤器(range filter)来限制文档的date
字段必须在2014年1月1日至2015年1月1日之间。最后,它使用一个聚合查询(aggregation query)来计算前10个不同的作者。"size": 0
指示Elasticsearch返回聚合结果而不是匹配文档的具体内容。
评论已关闭