(3)ElasticSearch基本的查询语句

ElasticSearch学习总结(二):ES介绍与架构说明 本文主要从概念以及架构层面对Elasticsearch做一个简单的介绍,在介绍ES之前,会先对ES的“发动机”Lucene做一个简单的介绍 1. Lucene介绍 为了更深入地理解ElasticSearch的工作原理,特别是索引和查询这两个过程,理解Lucene的工作原理至关重要。本质上,ElasticSearch是用Lucene来实现索引的查询功能的。 1.1 定义 Lucene是一... 阅读详情

一、Search API概览

1、Search API
(1)URL Search

  • 在URL中使用查询参数
  • 使用“q”,指定查询字符串
  • “query string syntax”,kv键值对
    在这里插入图片描述

(2)Request Body Search

  • 使用ElasticSearch提供的,基于JSON格式的更加完备的Query Domian Specific Language(DSL)
    在这里插入图片描述

2、指定查询的索引

语法范围
/_search集群上所有的索引
/index1/_searchindex1
/index1,index2/_searchindex1和index2
/index*/_search以index开头的索引

3、搜索Response
在这里插入图片描述
4、搜索的相关性Relevance
(1)搜索时用户和搜索引擎的对话
(2)用户关系的是搜索结果的相关性

  • 是否可以找打所有相关的内容
  • 有多少不相关的日内容被返回了
  • 文档的打分是否合理
  • 结合业务需求,平衡结果排名
  • 在这里插入图片描述

5、URL Search-通过URI query实现查询
我们可以使用postman、curl、浏览器等方式来实现,如:

 curl "http://192.168.25.143:9200/movies/_search?q=2012&df=title&sort=year:desc&from=0&size=10&timeout=1s" -X GET

在这里插入图片描述

  • q指定程序语句,使用Query String Syntax
  • df默认字段,指定时,会对所有字段进行查询
  • Sort培训/from和size用于分页
  • profile可以查看查询是如何被执行的

6、Query String Syntax(1)
(1)指定字段v.s泛查询

  • q=title:2012 / q=2012&df=title

(2)Term v.s Phrase

  • Beautiful Mind等效与Beautiful OR Mind
    用Term查询Beautiful Mind,那么查询结果中包含Beautiful 或者Mind
    在这里插入图片描述
    在这里插入图片描述

  • “Beautiful Mind”等效于Beau AND Mind。Phrase查询,还要求前后查询顺序保持一致
    如果用Phrase查询Beautiful Mind,那么查询内容要被引号包括起来,查询出来的结果内容和顺序必须和查询内容保持一致
    在这里插入图片描述在这里插入图片描述

7、Query String Synatx(2)
在使用分组查询的时候,我只想其中的其中的几个词出现,另外的词不出现,或者出现,可以使用以下方式
(1)方式一

  • AND / OR / NOT或者 && / || / !
  • 必须大写
  • title:(NOT Beautiful AND Mind)

(2)方式二

  • +表示must
  • -表示must_not
  • title:(-Beautiful +Mind)

8、Query String Syntax(3)
(1)范围查询

  • 区间表示:[]闭区间,{}开区间
  • year:[2019 TO 2018]
  • year:[* TO 2018]

(2)算数符号

  • year:>2010
  • year:(>2010 && <=2018)
  • year:(+>2010 +<=2018)

9、Query String Syntax(4)
(1)通配符查询(通配符查询效率低,占用内存大,不建议使用。特别是放在最前面)

  • ?代表1个字符,*代表0或多个字符
  • title:mi?d
  • title:be*

(2)正则表达式

  • title:[bt]oy

(3)模糊匹配与近似查询

  • title:befutifl~1
  • title:“lord rings”~2

二、Request Body与Query DSL简介

1、Request Body Search

  • 将查询语句通过HTTP Request Body发送给ElasticSearch
  • Query DSL
    这是查询movies下的所有文档
    在这里插入图片描述

2、分页

  • from从0开始,默认返回10个结果
  • 获取靠后的翻页成本比较高
    在这里插入图片描述

3、排序

  • 最好在“数字型”与“日期型”字段上排序
  • 因为对于对类型或者分析过的字段排序,系统会选一个值,无法得知该值
    在这里插入图片描述
    4、_source filtering
  • 如果_source没有存储,那就只返回匹配的文档的元数据
  • _source支持通过配符,例如:_source:[“name*”,“desc*”]
    在这里插入图片描述

5、使用查询表达式-Match
在这里插入图片描述
使用这样的查询,默认会查询到title字段中有Beautiful、Mind或者Beautiful Mind
如果只想查询Beautiful Mind可以使用下面这个语句:
在这里插入图片描述
6、短语搜索-Match Phrase
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

查询结果的title字段中必须包含“Beautiful Mind”,slop有文档的title字段“Beautiful Mind”中间如果有一个字符也会查询出来

三、Query String&Simple Query String查询

1、Query String Query

  • 类似与URI Query

users索引下有三个文档
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2、Simple Query String Query

  • 类似Query String,但是会忽略错误的语法,同时只支持部分查询语法
  • 不支持AND OR NOT,会当作字符串处理
  • Term之间默认的关系是OR,可以指定Operator
  • 支持部分逻辑
  • +代替AND
  • |代替OR
  • -代替NOT
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
Vivado工程芯片型号更换全流程:从IP更新到生成新bit文件(避坑指南) 本文详细介绍了Vivado工程中更换芯片型号的全流程,包括IP更新、约束文件适配和生成新bit文件的关键步骤。特别针对FPGA开发中常见的兼容性问题提供避坑指南,帮助开发者高效完成芯片迁移,确保设计稳定性和性能优化。 阅读详情

相关推荐

Windows下用Docker快速搭建SearXNG私有搜索引擎(附Dify集成配置)

本文详细介绍了在Windows环境下使用Docker快速搭建SearXNG私有搜索引擎的完整流程,包括环境准备、容器化部署、安全配置优化以及与Dify平台的深度集成方法。通过分步指导和实用配置示例,帮助开发者构建兼具隐私保护和AI增强能力的本地化搜索解决方案,特别适合需要定制化搜索服务的应用场景。

weixin_30300225的博客 336

Elasticsearch(es) 查询语句语法详解

Elasticsearch(es) 查询语句语法详解

cauchy8389的专栏 2万+

第三课 NXP S32K144 MCAL 集成到Vector davinci SIP-第一弹

将NXP S32K144 MCAL 集成到Vector davinci SIP的第三方库,导出ARXMl给Vector davinci SIP使用

candleer的博客 5857

ElasticSearch的常用查询语句

分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.net 基本的匹配(Query)查询 GET /bookdb_index/book/_search?q=guide #查询任一字段包含guide的记录。 下面是完整body版的查询: { "query": { "multi_match": { "query": "guide", "fiel

了解➔熟悉➔掌握➔精通 5961

基于OSPF技术的某企业网络设计(完整文档+ENSP拓扑图)

主要对网络规划与设计,以企业网络为背景,对某个中型企业网络进行规划设计,该企业总部在南京,在常州有一个分公司,需要实现总部和分公司能够访问外网,能够让分公司内的用户或主机访问总部服务器的资源,并且保证数据的安全性。在这次总部企业网络设计中,考虑到资金的问题,核心层部署2台核心三层交换机,负责转发总部内部用户的流量,并充当内部用户网关,能够实现内部不同网段的用户之间的连通性。对于一些对网络比较敏感的企业或用户,对网络的要求较高,对于网络的稳定性和安全性也有较高的要求。

qq1325513482的博客 2万+

ArcGIS Pro MCP 开源:自然语言驱动的 AI 制图与分析

人工智能与大模型的快速发展,正推动专业软件从“手动操作”走向“自然语言控制”。模型上下文协议(MCP)作为连接 AI 与外部工具的标准接口,类似为 AI 安装的“USB 接口”,让大模型可以通过统一协议调用 GIS 软件能力。基于 ArcPy 构建的 ArcGIS Pro MCP 项目,将复杂的地图制图与空间分析封装为 112 个可被 AI 调用的工具,使文本指令直接驱动软件完成数据加载、符号化、出图乃至叠加统计等任务。对 GIS 工程师、数据分析师与测绘规划从业者而言,该开源项目显著降低专业软件使用门槛,

weixin_29054195的博客 279

ElasticSearch中查询语句用法(match、match_phrase、multi_match、query_string)

ElasticSearch中查询语句用法(match、match_phrase、multi_match、query_string)

IT之一小佬的博客 1万+

手把手教你学Simulink——基于Simulink的多用户MIMO系统仿真建模示例

多用户MIMO概述在多用户MIMO系统中,基站配备多个天线,可以同时与多个用户进行通信。利用空间复用技术,不同用户的信号被分配到不同的空间流上,从而实现频谱资源的高效利用。多用户MIMO的核心挑战包括信道估计、波束成形设计以及干扰管理。关键技术点波束成形:通过调整发射信号的相位和幅度,在特定方向上增强信号强度并减少干扰。信道估计:获取每个用户的信道状态信息(CSI),用于优化波束成形矩阵。调制与解调:选择合适的调制方式(如QPSK、16-QAM等)以适应不同用户的信道条件。干扰消除。

MHD0815的博客 271

elasticsearch的常用查询语法(大全)

参考文章网址:https://www.cnblogs.com/xiohao/p/12970224.htmles查询。

fan_bigdata的博客 5346

LIN协议V2.2A版介绍

IN 协议规范2.2A 版(2010 年 12 月发布)是面向低成本汽车网络的标准,核心采用单主多从架构,支持最高20kbit/s速率,通过单总线实现通信;定义了完整的协议栈(含协议层、传输层、物理层等),规定了帧结构(含 Break 字段、Sync 字节、保护标识符 PID、数据字段、校验和)、5 类帧类型(无条件帧、事件触发帧等)及调度表机制以保障确定性传输;

qflook的博客 319

ParaView :在paraview创建渲染视图

ParaView :在paraview创建渲染视图

希望我的博客,能帮上你解决学习中工作中所遇到的问题 1311

Elasticsearch(ES)基础查询语法的使用

在 Elasticsearch 中,**聚合(Aggregation)**是一个强大的功能,用于对查询结果进行分组、统计、度量等操作。在 Elasticsearch 中,聚合查询并不返回实际的文档,而是返回聚合结果,例如每个分组的文档数量、平均值、最大值等。聚合查询不仅可以进行单一聚合,还可以进行嵌套聚合,即在一个聚合的结果上进行进一步的聚合。获取符合条件的 top N 文档,通常用于获取聚合组中的部分文档,适用于展示最高分的文档。的字段,你想按类别进行分组查询,统计每个类别的文档数量。

weixin_44592858的博客 1万+

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

es基本语句详解 查询语句详解

es基本语句详解 查询语句详解声明Rest风格索引的基本操作1. 创建一个索引2. 查看索引 我们使用elasticsearch-head3. 删除索引其它命令==文档的基本操作(重点)==添加数据修改文档删除文档查找(重重重点)通过id查找通过某个字段查找指定条件查找结果过滤排序分页查询多条件或与非查找过滤器:范围查找精确查找高亮查询 声明 本文涉及的es, elasticsearch-head, kibana, ik分词器的安装配置可以参考我的其它博客 本文主要参考狂神说java视频课程编写。主要是为了

心比天高,仗剑走天涯,保持热爱,奔赴向梦想! 1万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

ES基础入门基本查询语句

最近由于项目中使用ES,对照《Elasticsearch: 权威指南》进行学习,将一些知识进行整理总结。 ##插入一条记录 PUT /megacorp/employee/1 { "first_name" : "John", "last_name" : "Smith", "age" : 25, "about" : "I love to go ...

吴阳春的博客 4164

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

ES基本查询语句教程

前言 es是什么? es是基于Apache Lucene的开源分布式(全文)搜索引擎,,提供简单的RESTful API来隐藏Lucene的复杂性。 es除了全文搜索引擎之外,还可以这样描述它: 1、分布式的实时文件存储,每个字段都被索引并可被搜索 2、分布式的实时分析搜索引擎 3、可以扩展到成百上千台服务器,处理PB级结构化或非结构化数据。 ES的数据组织类比 Relational DB Elasticsearch 数据库(database) 索引(indices) 表(tables) types

大白菜的博客 4725

es怎么返回全部查询结果_ES基本查询语句教程

前言es是什么?es是基于Apache Lucene的开源分布式(全文)搜索引擎,,提供简单的RESTful API来隐藏Lucene的复杂性。es除了全文搜索引擎之外,还可以这样描述它:1、分布式的实时文件存储,每个字段都被索引并可被搜索2、分布式的实时分析搜索引擎3、可以扩展到成百上千台服务器,处理PB级结构化或非结构化数据。ES的数据组织类比Relational DBElasticsearc...

weixin_39531037的博客 6056

Java_ElasticSearch(ES)——分布式搜索引擎

Elasticsearch是一个开源的分布式搜索和分析引擎,最初由Elastic公司开发。它构建在Apache Lucene搜索引擎库之上,提供了一个强大的全文搜索和分析引擎,它结合kibana、Logstash、Beats,是一整套技术栈,被叫做ELK,适用于各种用例,包括文本搜索、日志分析、实时数据分析、监控和报警等。上述配置文件即表示添加扩展词典ext.dic,它就会在当前配置文件所在的目录中找这个文件。这种方式在文档id不存在时,就会相当于一个新增操作。

2509_94105725的博客 1003

搜索引擎之Elasticsearch

*简介:**ES全称:Elasticsearch,是一个基于Lucene库的搜索引擎。它提供了一个分布式、支持多租户的全文搜索引擎,具有HTTP Web接口和无模式JSON文档。Elasticsearch是用Java开发的,并在Apache许可证下作为开源软件发布。Elasticsearch官网:https://www.elastic.co/cn/products/elasticsearch。

aRtHuR1207的博客 1164

elasticsearch用QueryBuilder自己拼接查询语句用json方式传入

spring boot 使用的elasticSearch6.4.3的包。 json为自己拼接的查询语句 TransportClient client = new PreBuiltTransportClient(Settings.builder().put("cluster.name", es集群名称).build()) .addTransportAddress(new Transport...

qq_34004088的博客 4522

Elasticsearch入门:全文搜索引擎实战

本文将围绕“Elasticsearch入门:全文搜索引擎实战”,从多个方面详细介绍Elasticsearch的基本概念、安装部署、核心功能和应用场景,帮助读者快速上手并掌握这一实用的全文搜索引擎。本文从Elasticsearch的基本概念、安装部署、核心功能和应用场景等方面,对“Elasticsearch入门:全文搜索引擎实战”进行了详细的阐述。通过不断的研究和实践,相信Elasticsearch在全文搜索引擎领域将发挥更大的作用,为企业和开发者带来更多的价值。(4)启动Elasticsearch服务;

2501_92487701的博客 898

开源-基于ElasticSearch的通用搜索引擎

想要做出一个好的搜索引擎,重中之重是要先做好数据治理。

欢迎来到李奇峰的数据世界 3131

Elasticsearch(es)中must以及term的基本使用

在 Elasticsearch(ES)中,should 和 must 是布尔查询(Boolean Query)中常用的两个子句。term 和 range 是查询语句中常用的两种查询类型。更多查询方式:match、term、range、bool

WXiangQian 5076

基于kibana的Dev Tools控制板上es常用查询语句

基于kibana的Dev Tools控制板的es常用查询语句: 1、集群相关 //查询集群健康状态 GET _cluster/health // 查询所有节点 GET _cat/nodes // 查询索引及分片的分布 GET _cat/shards // 查询所有插件 GET _cat/plugins 2、索引相关查询 //查询所有索引及容量 GE...

weixin_43865381的博客 9264

ES 查询语句总结(3)聚合总结

ES查询语句总结

LM813381916的博客 2328

elasticsearch简介 搜索引擎全文搜索引擎

搜索引擎 为什么不用MySQL 我们开发的大部分企业级应用,其本质就是对数据的增删改查的包装,我们一般是分析业务的需求再在代码里面去写查询语句,这个语句一般就写死了,比如说你一个图书管理系统要查询已经有的书籍要查询一本书,这个功能已经写死了,比如说你搜索 “C++程序语言设计" 然后能得到一些数据,但是你颠倒顺序搜索"程序语言设计C++" MySQL的模糊查询就匹配不到数据了,用户还会玩出跟多花式的查询。另外模糊查询"like"是一个扫描全表的操作,如果是你的数据少还好,如果是你有千万数据,那MySQL的耗

半亩方糖 1362
上一篇: (2)ElasticSearch文档的基本操作与分词
下一篇: JDK动态代理源码解析
killerofjava
博客等级 码龄7年 10粉丝 58原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值