elasticsearch6.0笔记01

1.如果想实现模糊查询,比如:查询hello,写成了hallo,可以用fuzzy

PUT lbb_index5/student/1
{
 "content":"hello everyone "
}

GET /lbb_index5/student/_search
{
"query": {
 "fuzzy": {
    "content": "hallo"
 }
}
}

2.可以像sql一样写聚合函数:必须以“aggs”为标记开始,用一个简单例子说明用法:

比如需求:统计一个公司中对java感兴趣的员工,并且按照年龄分组,按照绩效降序排列,同时算出绩效的平均值!

注意:

1)如果不提前设置属性类型的话,绩效默认是long,如果有88.8这样的浮点数,就会失败,建议,一开始就设置好类型;

2)age_group,和age_avg为任意起的名字

POST /lbb_index7/user/_bulk
{"index":{"_id":1}}
{"learn":"java","age":29,"jixiao":88}
{"index":{"_id":2}}
{"learn":"java","age":27,"jixiao":96}
{"index":{"_id":3}}
{"learn":"java","age":27,"jixiao":86}
{"index":{"_id":4}}
{"learn":"C#","age":32,"jixiao":85}
{"index":{"_id":5}}
{"learn":"C#","age":27,"jixiao":98}

GET /lbb_index7/user/_search
{
  "query": {
    "match": {
      "learn": "java"
    }
  },
  "aggs": {
    "age_group": {
      "terms": {
        "field": "age",
        "order": {
          "jixiao_avg": "desc"
        }
      },
      "aggs": {
        "jixiao_avg": {
          "avg": {
            "field": "jixiao"
            }
        }
      }
    }
  }
}
发布了23 篇原创文章 · 获赞 3 · 访问量 6858

猜你喜欢

转载自blog.csdn.net/weixin_41834814/article/details/82744946