ElasticSearch:查询操作合集
在ElasticSearch中,查询操作可以通过多种方式进行,包括使用Query DSL、使用ElasticSearch的REST API、使用ElasticSearch的客户端库等。以下是一些常见的查询操作示例:
- 查询所有文档:
GET /_search
{
"query": {
"match_all": {}
}
}
- 根据关键词查询:
GET /_search
{
"query": {
"match": {
"title": "Elasticsearch"
}
}
}
- 布尔查询(must, should, must\_not):
GET /_search
{
"query": {
"bool": {
"must": { "match": { "title": "Elasticsearch" }},
"must_not": { "match": { "title": "Baidu" }},
"should": [
{ "match": { "tag": "search" }},
{ "match": { "tag": "full_text" }}
]
}
}
}
- 范围查询:
GET /_search
{
"query": {
"range": {
"age": {
"gte": 10,
"lte": 20
}
}
}
}
- 高亮查询结果:
GET /_search
{
"query": {
"match": {
"title": "Elasticsearch"
}
},
"highlight": {
"fields": {
"title": {}
}
}
}
- 分页查询:
GET /_search
{
"query": {
"match_all": {}
},
"from": 0,
"size": 10
}
- 排序查询:
GET /_search
{
"query": {
"match_all": {}
},
"sort": [
{ "age": "asc" }
]
}
这些示例展示了如何使用ElasticSearch的查询操作。具体的查询语法和参数可能根据ElasticSearch的版本而有所不同。
评论已关闭