首页 > 其他分享 >3.ElasticSearch~进阶

3.ElasticSearch~进阶

时间:2023-07-18 09:46:56浏览次数:59  
标签:search 进阶 GET ElasticSearch match query 分词 bank

ES支持两种基本方式检索:

一个是通过使用 REST request URI来发送搜索参数(uri + 检索参数)

GET bank/_search?q=*&sort=account_number:asc

另一个是通过 REST request body 来发送他们 (uri + 请求体)

GET bank/_search
{
"query":{
"match_all":{}
},
"sort":[
{
"balance":{
"order":"desc"
}
}
],
"from":0,
"size":5,
"_source":["balance","firstname"]
}

1、match_all :查询所有

GET bank/_search
{
    "query":{
        "match_all":{}
     },
     "sort":[
        {
          "balance":"asc"
        } 
     ]
}

2、match查询
全文检索会按照评分进行排序,
首选需要对要查询的字符串进行分词,然后根据分词的结果进行匹配
最后根据得分进行排序

GET bank/_search
{
  "query": {
    "match": {
      "address": "kings"
    }
  }
}

3、match_phrase 【短语匹配】
将需要匹配的值,当成一个整体单词(不分词)进行检索

GET bank/_search
{
  "query": {
    "match_phrase": {
      "address": "mill lane"
    }
  }
}

4、multi_match 【多字段匹配】
也是分词查询

// 查询 adress或者city中包含 mill的数据
GET bank/_search
{
  "query": {
    "multi_match": {
      "query": "mill",
      "fields": ["address","city"]
    }
  }
}

  

标签:search,进阶,GET,ElasticSearch,match,query,分词,bank
From: https://www.cnblogs.com/xcwang9/p/17561912.html

相关文章

  • ElasticSearch安装中文分词器(插件)、分词测试
    https://github.com/medcl/elasticsearch-analysis-ik分词测试:https://www.elastic.co/guide/en/elasticsearch/reference/6.8/indices-analyze.html请求URL:http://127.0.0.1:9200/_analyze请求方式:POST请求体/类型(JSON):{"analyzer":"ik_max_word",......
  • ElasticSearch-Mapping类型映射-增删改查
    https://www.elastic.co/guide/en/elasticsearch/reference/6.8/mapping.html7.x版本后默认都是_doc类型增加Mapping映射先说一个特殊的字段_all:https://www.elastic.co/guide/en/elasticsearch/reference/6.8/mapping-all-field.html#mapping-all-field_all字段是一个特......
  • 初始elasticSearch
    elasticSearch大致印象为什么用?mysql更擅长于crud等操作,当一张表达到百万级别时,检索速度过慢es检索速度快基本概念Index索引(两层意思)动词:类似mysql的insert名词:类似mysql的数据库type类型:类似mysql的具体表(指定了保存数据的类型,联系到了orm)Document文......
  • Elasticsearch date数据类型
    时间和日期类型是我们作为开发每天都会遇到的一种常见数据类型。和Java中有所不同,Elasticsearch 在索引创建之前并不是必须要创建索引的mapping。关系型数据库的思维就是在于写入数据之前,并不强制创建表结构。我们不用事先声明字段名称,字段类型以及长度等属性就可以直接向一个不......
  • 行行AI人才直播第10期:CTC智仝咨询联合创始人王发鑫《AI时代职场进阶之路——资深猎头
    当今AI技术正在快速渗透各个行业,从去年热门的AIGC到今年爆火的ChatGPT,人工智能高速发展让人惊叹的同时,也让“算法取代人类”、“AI或带来失业潮”等老问题重新凸显。这头灰犀牛将对未来的职场产生何种影响呢?未来什么样的人会被AI取代?AI时代的职业发展面临着何种新机遇和挑战呢?为......
  • ElasticSearch快照备份、还原
    快照备份备份和还原的前提:在配置文件elasticsearch.yml中设置path.repopath.repo:["D:\\elasticsearch-6.8.23\\elasticsearch-6.8.23\\snapshot_data"]创建快照仓库语法:PUThttp://127.0.0.1:9200/_snapshot/快照仓库名实例:创建一个名叫my_fs_backup的快照仓库PUThtt......
  • 2.ElasticSearch入门
    一、初步检索1、_catGET/_cat/nodes:查看所有结点GET/_cat/health:查看es的健康状况GET/_cat/master:查看主节点GET/_cat/indices:查看所有索引2、索引一个文档保存一个数据,保存在哪个索引的哪个类型下,指定用哪个唯一标识PUTcustomer/external/1:在customer......
  • 1-ElasticSearch - Docker安装
    1、下载镜像文件dockerpullelasticsearch:7.4.2dockerpullkibana:7.4.22、创建实例创建文件夹和配置文件mkdir-p/mydata/elasticsearch/configmkdir-p/mydata/elasticsearch/dataecho"http.host:0.0.0.0">>/mydata/elasticsearch/config/elasticsearch.yml创......
  • 【进阶玩法】策略+责任链+组合实现合同签章
    前置内容掌握策略模式掌握责任链模式掌握类继承、接口的实现掌握参数的传递与设置GitHub地址ps:【文章由来】公司项目中所用的合同签章处理流程,本人基于责任链上使用策略模式进行优化。签章的处理流程合同文本初始化合同文本生成签章挡板是否开启合同签章发送mq合同......
  • Mysql进阶篇(二)之索引
    一.索引概述1.介绍索引是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引。2.演示表结构及其数据如下:假如我们要执......