ES中查询中参数的解析

目录

      • query中参数
        • match参数
          • match_all
          • match:匹配指定参数
          • match_phrase
        • query中其他的参数
          • query_string
          • prefix前缀查询:
          • wildcard通配符查询:
          • range范围查询:
          • fuzzy 查询:
      • 组合查询bool参数
          • must
          • must_not
          • should条件
      • 其他参数

query中参数

  1. 词条查询term:它仅匹配在给定字段中含有该词条的文档,而且是确切的、未经分析的词条。
{ 
	 "query" : { 
		 "term" : { 
		 "title" : "crime" 
 		} 
	 } 
}
  1. 多词条查询terms,可以用来匹配多个这样的词条。把minimum_match属性设置为1;这意味着至少有1个词条应该匹配。
{ 
 	"query" : { 
 		"terms" : { 
 		"tags" : [ "novel", "book" ], 
 		"minimum_match" : 1 
		 } 
	 } 
}
match参数
GET /bank/_search
{
  "query": { "match_all": {} }
}
match_all

匹配所有文档

match:匹配指定参数

例如"query": { “match”: { “account_number”: 20 } },只匹配account_number=20的文档。当参数内容为短语时,会分词匹配, “query”: { “match”: { “address”: “mill lane” } },匹配address属性中含有mill或者lane这些词的文档(不区分大小写)。

match_phrase

“query”: { “match_phrase”: { “address”: “mill lane” } },匹配address中含有"mill lane"短语的文旦,而不是像上面那样只匹配其中的词。

query中其他的参数
query_string

查询支持全部的Apache Lucene查询语法

{ 
	 "query" : { 
	 "query_string" : { 
 		"query" : "title:crime^10 +title:punishment -otitle:cat +author:(+Fyodor +dostoevsky)", 
 		"default_field" : "title" 
 		} 
 	} 
}
prefix前缀查询:

以给定的前缀开始

wildcard通配符查询:

允许我们在查询值中使用*和?等通配符

{ 
	 "query" : { 
		 "wildcard" : { 
		 "title" : "cr?me" 
		 } 
	 } 
}
range范围查询:

范围查询使我们能够找到在某一字段值在某个范围里的文档

fuzzy 查询:

模糊查询中的第三种类型,它基于编辑距离算法来匹配文档。例如,当用户拼写错误时,仍可以查询出对的内容。

组合查询bool参数

使用布尔逻辑用一些小查询组成大查询

// 匹配age=40并且state不含“ID”且address中含有"mill"或者"lane"的记录
GET /bank/_search
{
    "query": {
        "bool": {
            "must": [
                {"match": {"age": 40}}
            ],
            "must_not": [
                {"match": {"state": "ID"}}
            ],
            "should": [
                {"match": {"address": "mill"}},
                {"match": {"address": "lane"}}
            ]
        }
    }
}
must

指定的所有匹配原则都匹配上了(即所有结果都为true)才行

must_not

里面所有的条件都禁止匹配上

should条件

只要匹配上其中的一个条件即可

其他参数

  1. sort,用于排序,“sort”: { “balance”: { “order”: “desc” } }
  2. from,用于分页
  3. size,用于分页
  4. _source:限制返回的字段数,“_source”: [“lastname”, “balance”]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/946214.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【OpenGL ES】GLSL基础语法

1 前言 本文将介绍 GLSL 中数据类型、数组、结构体、宏、运算符、向量运算、矩阵运算、函数、流程控制、精度限定符、变量限定符(in、out、inout)、函数参数限定符等内容,另外提供了一个 include 工具,方便多文件管理 glsl 代码&a…

端口被占用

端口8080被占用 哈哈哈,我是因为后端项目跑错了,两个项目后端名称太像了; (1)netstat -aon | findstr 8080,找到占用8080端口的进程号,获取对应的进程号pid; (2&#…

Spring中的设计模式

Spring中的设计模式 控制反转(IoC)和依赖注入(DI) IoC 是一个原则,而不是一个模式,以下模式(但不限于)实现了 IoC 原则。 **Spring IoC 容器就像是一个工厂一样,当我们需要创建一个对象的时候,只需要配置…

【2025 Rust学习 --- 09 特型和泛型】

特型和泛型 Rust 通过两个相关联的特性来支持多态:特型和泛型。许多 程序员熟悉这些概念,但 Rust 受到 Haskell 类型类(typeclass)的启发,采用 了一种全新的方式。 1、特型是 Rust 体系中的接口或抽象基类。乍一看&a…

【开源免费】基于Vue和SpringBoot的网上商城系统(附论文)

本文项目编号 T 129 ,文末自助获取源码 \color{red}{T129,文末自助获取源码} T129,文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…

使用Locust对MySQL进行负载测试

1.安装环境 pip install locust mysql-connector-python 2.设置测试环境 打开MySQL服务 打开Navicat新建查询,输入SQL语句 3.编写locust脚本 load_mysql.py # codingutf-8 from locust import User, TaskSet, task, between import mysql.connector import ran…

MF248:复制工作表形状到Word并调整多形状位置

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套,分为初级、中级、高级三大部分,教程是对VBA的系统讲解&#…

极品飞车6的游戏手柄设置

极品飞车,既可以用键盘来控制车辆的前进、后退、左转、右转、加速与减速,也可以使用游戏手柄来操作车辆的运行。需要注意的是,极品飞车虽然支持手柄,但是仅支持常见的北通、罗技还有部分Xbox系列的手柄,至于其他的PS4手…

2025元旦源码免费送

我们常常在当下感到时间慢,觉得未来遥远,但一旦回头看,时间已经悄然流逝。对于未来,尽管如此,也应该保持一种从容的态度,相信未来仍有许多可能性等待着我们。 免费获取源码。 更多内容敬请期待。如有需要可…

【CSS in Depth 2 精译_095】16.3:深入理解 CSS 动画(animation)的性能

当前内容所在位置(可进入专栏查看其他译好的章节内容) 第五部分 添加动效 ✔️【第 16 章 变换】 ✔️ 16.1 旋转、平移、缩放与倾斜 16.1.1 变换原点的更改16.1.2 多重变换的设置16.1.3 单个变换属性的设置 16.2 变换在动效中的应用 16.2.1 放大图标&am…

通过Cephadm工具搭建Ceph分布式存储以及通过文件系统形式进行挂载的步骤

1、什么是Ceph Ceph是一种开源、分布式存储系统,旨在提供卓越的性能、可靠性和可伸缩性。它是为了解决大规模数据存储问题而设计的,使得用户可以在无需特定硬件支持的前提下,通过普通的硬件设备来部署和管理存储解决方案。Ceph的灵活性和设计…

Mac连接云服务器工具推荐

文章目录 前言步骤1. 下载2. 安装3. 常用插件安装4. 连接ssh测试5. 连接sftp测试注意:ssh和sftp的区别注意:不同文件传输的区别解决SSL自动退出 前言 Royal TSX是什么: Royal TSX 是一款跨平台的远程桌面和连接管理工具,专为 mac…

xterm + vue3 + websocket 终端界面

xterm.js 下载插件 // xterm npm install --save xterm// xterm-addon-fit 使终端适应包含元素 npm install --save xterm-addon-fit// xterm-addon-attach 通过websocket附加到运行中的服务器进程 npm install --save xterm-addon-attach <template><div :…

[2025] 如何在 Windows 计算机上轻松越狱 IOS 设备

笔记 1. 首次启动越狱工具时&#xff0c;会提示您安装驱动程序。单击“是”确认安装&#xff0c;然后再次运行越狱工具。 2. 对于Apple 6s-7P和iPad系列&#xff08;iOS14.4及以上&#xff09;&#xff0c;您应该点击“Optinos”并勾选“允许未经测试的iOS/iPadOS/tvOS版本”&…

网页排名:PageRank 算法的前世今生

PageRank算法全解析&#xff1a;从理论到实践 引言 PageRank 是由拉里佩奇&#xff08;Larry Page&#xff09;和谢尔盖布林&#xff08;Sergey Brin&#xff09;在1996年发明的一种链接分析算法&#xff0c;最初用于Google搜索引擎来评估网页的重要性。该算法通过模拟随机浏览…

嵌入式开发之使用 FileZilla 在 Windows 和 Ubuntu 之间传文件

01-FileZilla简介 FileZilla 是一个常用的文件传输工具&#xff0c;它支持多种文件传输协议&#xff0c;包括以下主要协议&#xff1a; FTP (File Transfer Protocol) 这是 FileZilla 最基本支持的协议。FTP 是一种明文传输协议&#xff0c;不加密数据&#xff08;包括用户名和…

Jmeter的安装与使用

1.下载压缩包&#xff0c;并解压到本地 2.在bin目录下找到jmeter.bat双击打开图形化界面 3.在测试计划上点击右键添加一个线程组 4.可以自定义线程数&#xff0c;Ramp_Up表示在该时间内将一组线程将运行完毕&#xff0c;循环次数可自定义 5.在线程组点击右键添加配置元件…

pycharm pytorch tensor张量可视化,view as array

Evaluate Expression 调试过程中&#xff0c;需要查看比如attn_weight 张量tensor的值。 方法一&#xff1a;attn_weight.detach().numpy(),view as array 方法二&#xff1a;attn_weight.cpu().numpy(),view as array

XIAO ESP32 S3网络摄像头——2视频获取

本文主要是使用XIAO Esp32 S3制作网络摄像头的第2步,获取摄像头图像。 1、效果如下: 2、所需硬件 3、代码实现 3.1硬件代码: #include "WiFi.h" #include "WiFiClient.h" #include "esp_camera.h" #include "camera_pins.h"// 设…

数据仓库中的指标体系模型介绍

数据仓库中的指标体系介绍 文章目录 数据仓库中的指标体系介绍前言什么是指标体系指标体系设计有哪些模型?1. 指标分层模型2. 维度模型3. 指标树模型4. KPI&#xff08;关键绩效指标&#xff09;模型5. 主题域模型6.平衡计分卡&#xff08;BSC&#xff09;模型7.数据指标框架模…