前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ES进阶 -- 图形界面

ES进阶 -- 图形界面

作者头像
用户10521079
发布2023-05-04 19:08:24
1K0
发布2023-05-04 19:08:24
举报
文章被收录于专栏:Smile博客

1. 全文检索查询

全文检索查询,会对用户输入的内容分词,常用于收所框首搜索

代码语言:javascript
复制
#match 单字段查询
GET /hotel/_search
{
  "query": {
    "match": {
      "all": "如家外滩"
    }
  }
}

#multi_match  组合字段搜索
GET /hotel/_search
{
  "query": {
    "multi_match": {
      "query": "外滩如家",
      "fields": ["brand","name","business"]
    }
  }
}

2.精确查询

精确查询一般是查找keyword,数值。日期,Boolean等类型字段,所以不会对字段进行分词

  • term:根据词条精确值查询
  • range:根据值的范围查询
代码语言:javascript
复制
# term 准确查询
GET /hotel/_search
{
  "query": {
    "term": {
      "city": {
        "value": "上海"
      }
    }
  }
}

# range 范围查询
GET /hotel/_search
{
  "query": {
    "range": {
      "price": {
        "gte": 1000,
        "lte": 3000
      }
    }
  }
}

3.相关性算分

代码

代码语言:javascript
复制
# funtion scoure 查询

GET /hotel/_search
{
  "query": {
    "function_score": {
      "query": {
        "match": {
      "all": "外滩"
    }},
      "functions": [
        {
          "filter": {
            "term": {
              "brand": "如家"
            }
          },
          "weight": 10
        }
      ],
      "boost_mode": "sum"
    }
  }
}

4.bool复合查询

代码语言:javascript
复制
#复合查询
GET /hotel/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "name": "如家"
          }
        }
      ],
      "must_not": [
        {
          "range": {
          "price": {
            "gt": 400
          }
        }
       }
      ],
      "filter": [
        {
          "geo_distance": {
            "distance": "10km",
            "location": {
              "lat": 31.21,
              "lon": 121.5
            }
          }
        }
      ]
    }
  }
}

搜索结果的处理

5.排序

常规代码

代码语言:javascript
复制
#排序
GET /hotel/_search
{
  "query": {
    "match_all": {}
  },
  "sort": [
    {
      "score":  "desc"
    },
    {
      "price": "asc"
    }
  ]
}

地理位置排序

6. 分页

7.高亮

8.添加字段索引 !重要

代码语言:javascript
复制
#添加索引字段
PUT /hotel/_mapping
{
  "properties":{
     "isAD":{
       "type":"keyword",
       "index" : "false"
     }
  }
}

9.数据聚合

限定聚合范围

嵌套聚合

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 全文检索查询
    • 2.精确查询
      • 3.相关性算分
        • 4.bool复合查询
        • 搜索结果的处理
          • 5.排序
            • 6. 分页
              • 7.高亮
                • 8.添加字段索引 !重要
                  • 9.数据聚合
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档