ES常用查询语法示例

1、查询所有

GET order/_search
{
  "query": {
    "match_all": {}
  },
  size:10,
  "_source":{
    "include":["username","gamecode"],
    "exclude":["gamename"]
  }
}

size:分页大小

_source:指定doc返回的内容,示例中可简写为:"_source":["username","gamecode"]

 

2、条件查询 (terms、match、range)

GET order/_search
{
    "query": {
        "bool": {
            "filter": {
                "terms": {
                    "username": "test_user_01"
                }
            }
        }
    }
}

match与terms区别:terms精确匹配,match会分词然后进行匹配(前提是装有分词器,常用的中文分词器ik)

 

3、逻辑关联(must、must not、should)

 

4、聚合(sum、avg)

 

5、去重(cardinality、top hit、collapse)

GET order/_search
{
    "aggs": {
        "byOrderNo": {
            "cardinality": {
                "field": "byOrderNo.keyword" 
            }
        }
    }
}

GET order/_search
{
    "aggs": {
        "byOrderNo": {
            "terms": {
                "field": "byOrderNo.keyword" 
            },
            "aggs":{
                "bytime": {
                    "top_hits": {
                        "sort": [ "createtime.keyword": { "order": "desc"}],
                        "size": 1
                    }
                }
            }
        }
    }
}

GET order/_search
{
    "collapse": {
        "field":"orderNo.keyword",
        "inner_hits": {
          "name": "top_rated",
          "size": 1
        }
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值