elasticsearch查询操作(语句方式)
在Elasticsearch中,可以通过使用Elasticsearch Query DSL来执行查询操作。以下是一些基本的查询操作示例:
- 全文搜索查询(Match Query):
GET /_search
{
"query": {
"match": {
"message": "Elasticsearch"
}
}
}
- 多字段全文搜索查询(Multi-Match Query):
GET /_search
{
"query": {
"multi_match": {
"query": "Elasticsearch",
"fields": ["title", "body"]
}
}
}
- 精确匹配查询(Term Query):
GET /_search
{
"query": {
"term": {
"user.id": "kimchy"
}
}
}
- 范围查询(Range Query):
GET /_search
{
"query": {
"range": {
"age": {
"gte": 10,
"lte": 20
}
}
}
}
- 复合查询(Bool Query):
GET /_search
{
"query": {
"bool": {
"must": [
{ "match": { "title": "Elasticsearch" }},
{ "match": { "content": "Elasticsearch" }}
],
"filter": [
{ "term": { "status": "published" }}
]
}
}
}
这些查询可以根据需要进行组合,以执行更复杂的搜索操作。在实际应用中,你可能还需要结合过滤器(filters)、排序(sorting)、分页(pagination)等功能来完善你的搜索需求。
评论已关闭