业界动态
ES 【4】DSL 搜索 : term精确搜索与match分词、match_phrase最低精度、boost权重、布尔查询boolQuery、filter过滤器、sort排序
2024-11-05 01:48

查询搜索的规范

ES 【4】DSL 搜索 : term精确搜索与match分词、match_phrase最低精度、boost权重、布尔查询boolQuery、filter过滤器、sort排序

        在索引后加上  _search  ; 

        ?q  代表是query   

        基于 desc 字段是查询

多条件查询

        DSL 搜索,查询条件使用 josn格式。

exists  查询某个字段是否存在   query  代表查询

  添加  from   size 关键字。 from 是第几条 ; size 每页多少条。  

term  搜索的时候会把用户搜索内容,比如“慕课网”作为一整个关键词去搜索,而不会对其进行分词后再搜索。  

match 会对 慕课网 先进行分词(其实就是全文检索,在查询,而term则不会,直接把 慕课网 作为一个整的词汇去搜索。match 搜索,比如 desc字段中有一个 “课” ,比如是 “上课” 就可以被搜索到。而 term 则必须是 “慕课网” 才可以被搜索到

match:分词后只要有匹配就返回

match_phrase:分词结果必须在text字段分词中都包含,而且顺序必须相同,而且必须都是连续的。(搜索比较严格

slop:允许词语间跳过的数量

 operator

  • or:搜索内容分词后,只要存在一个词语匹配就展示结果
  • and:搜索内容分词后,都要满足词语匹配

minimum_should_match

  •  minimum_should_match :最低匹配精度,至少有[分词后的词语个数]x百分百,得出一个数据值取整。举个例子:当前属性设置为 70% ,若一个用户查询检 有10个词语,那么匹配度按照 10x70%=7,则desc中至少需要有7个词语匹配,就展示;若分词后有8个,则 8x70%=5.6,则desc中至少需要有5个词语匹 示。 ‘
  • minimum_should_match 也能设置具体的数字,表示个数

根据 ids 来查询

”慕课网“ 在 desc ; nickname 两个字段中查询

提升字段权重   使用   ^ 

可以组合多重查询

  • must:查询必须匹配搜索条件,譬如 and
  • should:查询匹配满足1个以上条件,譬如 or
  • must_not:不匹配搜索条件,一个都不要满足。(里面多条件也是 and 形式,既不满足A条件,也不满足B条件,也不满足C条件
  • 这3个关键字,可以组合一起使用

这3个查询内容都是已数组方式传入

 列如,    must  即 字段 “desc” 和 “nickname” 包含 “慕课网” 字段 并且 sex=1

boost 为词汇查询加权重

数值越大,权重越高。搜索后,有个 _score 值就越高,搜索出来的排名也就会越高

对搜索出来后的数据作过滤。

对搜索出来的结果进行数据过滤。不会到es库里去搜,不会去计算文档的相关度分数,所以过滤的性能会比较高,过滤器可以和全文搜索结合在一起使用。 post_filter元素是一个顶层元素,只会对搜索结果进行过滤。不会计算数据的匹配度相关性分数,不会根据分数去排序,query则相反,会计算分数,也会按照分 使用场景

  • query:根据用户搜索条件检索匹配记录
  • post_filter:用于查询后,对结果数据的筛选
  • gte:大于等于
  • lte:小于等于
  • gt:大于
  • lt:小于

对查询的数据筛选   money字段在 55.8 ~ 155.8的区间

对查询的数据,进行排序。排序一般对数值排序, 文本的排序一般不多

  • asc   正序
  • desc  倒叙 

数值、keyword 都可以做排序。 

text 文本不能做排序,因为做了分词。要给text字段做排序,需要给它添加一个附属属性。

如下, name 类型是 text , 但是又给它一个附属属性 keyword

 当需要对 text 类型的字段做排序时 就是   字段.keyword。 如下

加上 highlight 标签。

    "pre_tags": ["<tag>"],
    "post_tags": ["</tag>"],

    以上就是本篇文章【ES 【4】DSL 搜索 : term精确搜索与match分词、match_phrase最低精度、boost权重、布尔查询boolQuery、filter过滤器、sort排序】的全部内容了,欢迎阅览 ! 文章地址:http://www.dbeile.cn/news/457.html 
     资讯      企业新闻      行情      企业黄页      同类资讯      首页      网站地图      返回首页 多贝乐移动站 http://lzlz0618.dbeile.cn/ , 查看更多   
最新新闻
【儿童友好】五一假期去哪玩?徐汇发布“侬好,西岸”儿童友好主题线路
  《上海市推进儿童友好城市建设三年行动方案(2023-2025年)》提出,加快推进公共空间和服务设施适儿化改造,打造一批让孩子
从刷屏全网到濒临破产,I Do踩了品牌营销的哪些坑?
图片来源@视觉中国文 | 刀法研究所,作者 | 晶敏2023 年的坏消息比以往来得更早一些。1 月 4 日,婚戒品牌 I Do 母公司恒信玺利
人社部:这些证书已取消,别再考啦!
许多人由于职业需要和对技能拓展的需求,会力所能及地考取各种证书。但并不是所有证书都是国家承认、值得考的,有些证书早已被取
为什么百度要给百家号引流 2024技术攻略!超好用)
那一天,百度给百家号引流的举动震动了整个网络行业,成为了关注的焦点。为什么百度要这么做呢?这背后的原因我想很多人都已经猜
在家练瑜伽不知道练哪些动作?瑜伽老师为你精选20个基础体式
  给大家整理了20个基础瑜伽体式。这20个基础体式,包括前屈、后弯、侧屈、扭转、倒置。从站姿开始到跪姿到仰卧和俯卧,有力量
中国第一网红是谁?2018中国网红排行榜
在2016年,人们称其为“网红元年”, 在搜索前排的各类网红中,找到了十个最具话题性的人物——Papi酱、王思聪、薛之谦、大张伟
#小红书校招(9785)# #小红书内推(13549)# #2021秋招(705
8月29日开始投递简历。9月4日收到第一次面试硬件测试岗,发现和我干的不太匹配,但是面试官和我仔细讲了嵌入式软硬测三类岗的内
国际投资决策支持工具和服务供应商MSCI董事总经理魏震:MSCI希望进一步跟中国企业和金融机构合作
专题:第二十届中国国际金融论坛  首先感谢主办方的邀请,这个论坛叫中国国际金融论坛,聚焦中国,也放眼全球的发展趋势。我想
LDAP基础安装与简单入门使用
0x00 前言简述主要产品基本模型应用场景0x01 环境安装基于 yum 安装基于 Docker 安装0x02 LDAP配置命令slapd 命
不靠海底捞,谁来买颐海国际的火锅调料?
文 | 周亚楠编辑 | 顾彦本文核心观点1、颐海国际和海底捞是强绑定关系,福祸相依;2、想要摆脱依赖的颐海国际全品类扩张,在复合
本企业新闻
推荐企业新闻