elasticsearch-如何给文档新增/更新的字段

文章目录

  • 前言
    • elasticsearch-如何给文档新增/更新的字段
      • 1. 如何给某些文档新增/更新的字段
      • 2. 给所有文档添加/更新一个新的字段
      • 3. 测试

前言

  如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
  而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


elasticsearch-如何给文档新增/更新的字段

1. 如何给某些文档新增/更新的字段

POST /blog_new/_update_by_query
{"script": {"source": "ctx._source.double_yzy_flag = 'Y'","lang": "painless"},"query": {"bool": {"filter": [{"term": {"author": {"value": "yangzhenyu","boost": 1.0}}}],"adjust_pure_negative": true,"boost": "1.0"}}
}

在这里插入图片描述
ctx._source:这是 Elasticsearch 中用于修改文档字段的方式。通过 ctx._source 可以访问和修改文档中的字段。
效果:执行语句时,如果文档中没有 double_yzy_flag 字段,它会自动新增并赋值为 ‘Y’。如果字段已经存在,则会更新其值为 ‘Y’

注意的是

  1. 当你添加一个新的字段(没有预定义映射)时,Elasticsearch 会根据字段的内容推断类型。对于字符串值(如 ‘Y’),Elasticsearch 默认将其类型设置为 keyword,因为 keyword 类型是用于存储精确值、不可分词的字符串数据。keyword 类型适合用于标识符、标签、分类、状态等字段。
  2. keyword 类型的特点:
    • 不分词:keyword 类型字段会原样存储文本数据,不会对其进行分词(如 analyze)。
    • 适合精确匹配:keyword 类型适用于精确匹配查询,如 term 查询,因为它存储的内容没有经过分词,查询时直接使用原值进行匹配。

2. 给所有文档添加/更新一个新的字段

POST /blog_new/_update_by_query
{"script": {"source": "ctx._source.double_xxx = 'N'","lang": "painless"},"query": {"match_all": {}}
}

在这里插入图片描述

3. 测试

1、查询该索引文档总数

GET /blog_new/_search
{"size": 0
}

在这里插入图片描述
总数为:2433
2、查询double_yzy_flag=Y的数量
在这里插入图片描述
这是上次执行更新新增语句update的数量,总共有605。
下边是查询double_yzy_flag=Y的数量:

GET /blog_new/_search
{"size": 0,"query": {"bool": {"filter": [{"term": {"double_yzy_flag.keyword": {"value": "Y","boost": 1.0}}}],"adjust_pure_negative": true,"boost": "1.0"}},"sort": [{"publish_date": {"order": "asc"}}]
}

在这里插入图片描述
下边是查询非double_yzy_flag=Y的数量:
在这里插入图片描述
预测数量应该是总数-double_yzy_flag=Y的数量=2433 - 605 = 1828

GET /blog_new/_search
{"size": 0,"query": {"bool": {"must_not": [{"match_phrase": {"double_yzy_flag.keyword": {"query": "Y","slop": 0,"zero_terms_query": "NONE","boost": 1}}}],"adjust_pure_negative": true,"boost": "1.0"}},"sort": [{"publish_date": {"order": "asc"}}]
}

在这里插入图片描述
测试正确!!

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

详解Java数据库编程之JDBC

目录 首先创建一个Java项目 在Maven中央仓库下载mysql connector的jar包 针对MySQL版本5 针对MySQL版本8 下载之后,在IDEA中创建的项目中建立一个lib目录,然后把刚刚下载好的jar包拷贝进去,然后右键刚刚添加的jar包,点击‘添…

数据挖掘之数据预处理

​​​​​​​ 引言 数据挖掘是从大量数据中提取有用信息和知识的过程。在这个过程中,数据预处理是不可或缺的关键步骤。数据预处理旨在清理和转换数据,以提高数据质量,从而为后续的数据挖掘任务奠定坚实的基础。由于现实世界中的数据通常…

scala的正则表达式

定义一个规则,正则表达式 查找。 在目标字符串中,找到符合正则1表达式规则要求的 单个val reg"[^ab]".r 多个字符 1. . 表示 除了换行之外的其他任意单个字符 2. \d 等于【0-9】匹配一个数字 3. \D 除了\d之外的其他任意字符,表…

MySQL——操作

一.库的操作 1.基本操作 创建数据库 create database 数据库名称; 查看数据库 show databases; 删除数据库 drop database 数据库名称; 执行删除之后的结果: 数据库内部看不到对应的数据库 对应的数据库文件夹被删除,级联删除,里面的数据表全部被删…

运费微服务和redis存热点数据

目录 运费模板微服务 接收前端发送的模板实体类 插入数据时使用的entity类对象 BaseEntity类 查询运费模板服务 新增和修改运费模块 整体流程 代码实现 运费计算 整体流程 总的代码 查找运费模板方法 计算重量方法 Redis存入热点数据 1.从nacos导入共享redis配置…

Java刷题常见的集合类,各种函数的使用以及常见的类型转化等等

前言 相信大家在刷算法题的过程中,好不容易想出来大概的思路,也知道去用哪个集合类,但各个集合类的一些命令都长得太像,很容易将他们弄错,并且在各集合之间的转化也是特别烦人,还有很多实用的函数都知道可…

【机器学习】机器学习的基本分类-监督学习-决策树-CART(Classification and Regression Tree)

CART(Classification and Regression Tree) CART(分类与回归树)是一种用于分类和回归任务的决策树算法,提出者为 Breiman 等人。它的核心思想是通过二分法递归地将数据集划分为子集,从而构建一棵树。CART …

《船舶物资与市场》是什么级别的期刊?是正规期刊吗?能评职称吗?

问题解答 问:《船舶物资与市场》是不是核心期刊? 答:不是,是知网收录的正规学术期刊。 问:《船舶物资与市场》级别? 答:国家级。主管单位:中国船舶集团有限公司 主办单…

「Mac畅玩鸿蒙与硬件41」UI互动应用篇18 - 多滑块联动控制器

本篇将带你实现一个多滑块联动的控制器应用。用户可以通过拖动多个滑块,动态控制不同参数(如红绿蓝三色值),并实时显示最终结果。我们将以动态颜色调节为例,展示如何结合状态管理和交互逻辑,打造一个高级的…

利用红黑树封装map,和set,实现主要功能

如果不知道红黑树是什么的时候可以去看看这个红黑树 思路 首先我们可以把封装分为两个层面理解,上层代码就是set,和map,底层就是红黑树 就相当于根据红黑树上面套了两个map,set的壳子,像下面这张图一样 对于map和set,map里面存…

汽车网络安全 -- IDPS如何帮助OEM保证车辆全生命周期的信息安全

目录 1.强标的另一层解读 2.什么是IDPS 2.1 IDPS技术要点 2.2 车辆IDPS系统示例 3.车辆纵深防御架构 4.小结 1.强标的另一层解读 在最近发布的国家汽车安全强标《GB 44495》,在7.2节明确提出了12条关于通信安全的要求,分别涉及到车辆与车辆制造商云平台通信、车辆与车辆…

R语言机器学习论文(二):数据准备

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载导入数据一、数据描述二、数据预处理(一)修改元素名称(二)剔除无关变量(三)缺失值检查(四)重复值检查(五)异常值检查三、描述性统计(一)连续变量数据情…

java基础语法光速入门

前言 欢迎来到我的博客 个人主页:北岭敲键盘的荒漠猫-CSDN博客 本文整理Java的基础语法部分 适合有编程基础的人快点掌握语法使用 没学过一两门语言的话。。还是不建议看了 极致的浓缩没有一点解释 注释 单行注释 // 多行注释 /**/ 数据类型 布尔型:true false 整型:int,lon…

【Linux】常用命令二

声明:以下内容均学习自《Linux就该这么学》一书。 1、cat 用于查看内容较少的纯文本文件。 参数-n可以显示行号。 2、more 用于查看内容较多的纯文本文件。 它会在最下面使用百分比的形式来提示你已经月读了多少内容,你可以使用空格键或回车键向下翻…

springboot利用easypoi实现简单导出Excel

vue springboot利用easypoi实现简单导出 前言一、easypoi是什么?二、使用步骤 1.传送门2.前端vue3.后端springboot 3.1编写实体类(我这里是dto,也一样)3.2控制层结尾 前言 今天玩了一下springboot利用easypoi实现excel的导出,以前…

合规性要求对漏洞管理策略的影响

讨论漏洞管理中持续面临的挑战,包括确定漏洞的优先级和解决修补延迟问题。 介绍合规性要求以及自动化如何简化漏洞管理流程。 您认为为什么尽管技术不断进步,但优先考虑漏洞和修补延迟等挑战仍然存在? 企业基础设施日益复杂,攻…

【NLP高频面题 - LLM架构篇】旋转位置编码RoPE相对正弦位置编码有哪些优势?

【NLP高频面题 - LLM架构篇】旋转位置编码RoPE相对正弦位置编码有哪些优势? 重要性:⭐⭐⭐ 💯 NLP Github 项目: NLP 项目实践:fasterai/nlp-project-practice 介绍:该仓库围绕着 NLP 任务模型的设计、训练…

STM32 PWM波形详细图解

目录 前言 一 PWM介绍 1.1 PWM简介 1.2 STM32F103 PWM介绍 1.3 时钟周期与占空比 二.引脚映像关系 2.1引脚映像与寄存器 2.2 复用功能映像 三. PWM 配置步骤 3.1相关原理图 3.2配置流程 3.2.1 步骤一二: 3.2.2 步骤三: 3.2.3 步骤四五六七: …

洛谷 B2029:大象喝水 ← 圆柱体体积

【题目来源】https://www.luogu.com.cn/problem/B2029【题目描述】 一只大象口渴了,要喝 20 升水才能解渴,但现在只有一个深 h 厘米,底面半径为 r 厘米的小圆桶 (h 和 r 都是整数)。问大象至少要喝多少桶水才会解渴。 …

使用docker部署GBase8s数据库(jdk安装,docker安装,GBase部署)

jdk安装步骤 1.将压缩包上传到/opt/software 2.解压到/opt/module tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module 3.配置环境变量 3.1 在/etc/profile.d目录下创建my_env.sh sudo touch my_env.sh 3.2在文件中添加内容 sudo vim my_env…