ES 关于文档的操作复杂部分(重点)

在操作之前额外添加一个Jie age为3的数据用于区分

限定返回的结果类型

使用_source限定要返回哪些字段

条件排序

使用sort 对age进行降序排序

GET /jie/user/_search
{
  "query": {
    "match": {
      "name": "jie"
    }
  },
  "sort": [
    {
      "age": {
        "order": "desc"
      }
    }
  ]
}

升序改为
"order": "asc"

分页查询


from代表第几页 size代表一页几个

布尔值查询

must &&

查询名字为jie age为3的数据

should ||

下面使用should or 操作
可以看到张三也被匹配进来了

must not

很好理解 查询就是不满足的条件
如查看年龄不为20并且名字不为jie的数据

过滤器

范围过滤
查找年龄大等于10 小等于20 名字为jie的数据

多条件模糊查询

多条件精确查询

该查询是直接通过倒排索引查询
创建一个数据库 包含text和keyword两个类型 (区别在于text会使用分词器 keyword不会使用)

添加数据

那么对于这条查询 会走分词器所以仍然会得到两个结果

下面这个查询由于是keyword类型 必须是完全匹配 不会走分词器 所以最后只会有一个结果

高亮查询

在高亮设置里面设置好前缀和后缀
那么在对应的搜索结果就自动为你补充好前端代码

posted @ 2021-09-21 10:46  一个经常掉线的人  阅读(82)  评论(0)    收藏  举报