ES查询语法总结

一、基本查询语法

1、查询所有结果

GET /es_test_20211119/_search
{"query":{"match_all":{}}}

2、根据条件查询

GET /es_test_20211119/_search
{
  "query": {
    "match": {
      "_cw_line_num": "27,28"
    }
  }
}

3、排序

GET /es_test_20211119/_search
{
  "query": {
    "match": {
      "_cw_line_num": "27,28"
    }
  }
}

4、指定返回_source指定的字段

{
  "query": {
    "match_all": {}
  },
  "_source": [
    "_cw_log_type"
  ]
}

5、批量查询

{
  "query": {
    "_cw_line_num": {
      "values": [
        27,
        28
      ]
    }
  }
}

6、单索引批量查询

{
  "ids": [
    "1001",
    "1002",
    "1003"
  ]
}

7、term不分词查询

{
  "query": {
    "term": {
      "_cw_line_num": {
        "value": 27
      }
    }
  }
}

8、精准匹配

{
  "query": {
    "match_phrase": {
      "_cw_line_num": 27
    }
  }
}

9、must查询

{
  "query": {
    "bool": {
      "must": [{
        "match": {
          "name": "小小"
        }
      },
      {
        "range": {
          "age": {
            "gt": 19,
            "lte": 22
          }
        }
      }]
    }
  }
}

10、should查询

{
  "query": {
    "bool": {
      "must": [{
        "match": {
          "name": "小小"
        }
      },
      {
        "range": {
          "age": {
            "gt": 19,
            "lte": 22
          }
        }
      }]
    }
  }
}

11、filter过滤查询

{
  "query": {
    "bool": {
      "should": [
        {
          "match": {
            "name": "小小"
          }
        }
      ],
      "filter": {
        "range": {
          "age": {
            "gt": 21,
            "lte": 22
          }
        }
      }
    }
  }
}

12、must_not语句

  "query": {
    "bool": {
      "must_not": [{
        "match": {
          "_cw_app": "27"
        }
      }]
    }
  }
}

13、分页查询

 {"size": 20
  , "from": 2
 }

14、聚合查询aggs

GET car_statics_index/_search
{
        "size": 0,
        "aggs": {// 类比别名
                "min_price": {
                        "min": {// 聚合方式
                                "field": "price"
                        }
                },
                "max_price": {
                        "max": {
                                "field": "price"
                        }
                },
                "avg_price": {
                        "avg": {
                                "field": "price"
                        }
                },
                "sum_price": {
                        "sum": {
                                "field": "price"
                        }
                },
                "cistinct_price": {
                        "cardinality": {
                                "field": "price"
                        }
                }
        }
}

查询结果

{
  "took" : 35,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : 8,
    "max_score" : 0.0,
    "hits" : [ ]
  },
  "aggregations" : {
    "max_price" : {
      "value" : 80000.0
    },
    "min_price" : {
      "value" : 10000.0
    },
    "avg_price" : {
      "value" : 26500.0
    },
    "cistinct_price" : {
      "value" : 7
    },
    "sum_price" : {
      "value" : 212000.0
    }
  }
}

15、value_count

{
    "query":{
        "bool":{
            "must":[
                {
                    "match":{
                        "prodSubNo":"601001"
                    }
                }
            ]
        }
    },
    "_source":[
        "prodSubNo",
        "useTime",
        "channelInto",
        "maiDianType",
        "bussEventId"
    ],
    "aggs":{
        "offset":{
            "value_count":{
                "field":"maiDianType.keyword"
            }
        }
    },
    "size":1
}

查询结果

16、Cardinality聚合(相当于distinct)

{
    "query":{
        "bool":{
            "must":[
                {
                    "match":{
                        "prodSubNo":"601001"
                    }
                }
            ]
        }
    },
    "_source":[
        "prodSubNo",
        "useTime",
        "channelInto",
        "maiDianType",
        "bussEventId"
    ],
    "aggs":{
        "maiDianType_count":{
            "cardinality":{
                "field":"maiDianType.keyword"
            }
        }
    },
    "size":1
}

 查询结果:

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值