首页 > 代码库 > Elasticsearch学习笔记-04.1更新文档
Elasticsearch学习笔记-04.1更新文档
除了创建和替换文档,我们也可以更新文档。需要注意的是Elasticsearch在底层并不会整的更新文档。当我们执行更新操作的时候,Elasticsearch会一次性完成先删除,再新建一个文档。
下面的例子示意了如何将我们之前索引的ID为1的文档的name字段修改为“Jane Doe”:
POST /customer/external/1/_update?pretty { "doc": { "name": "Jane Doe" } }
下面的例子示意了如何将我们之前索引的ID为1的文档的name字段修改为“Jane Doe”,并且新增一个age字段:
POST /customer/external/1/_update?pretty { "doc": { "name": "Jane Doe", "age": 20 } }
我们也可以使用简单的额脚本来执行更新操作。下面的例子使用脚本将age的值加5:
POST /customer/external/1/_update?pretty { "script" : "ctx._source.age += 5" }
上面示例中的ctx._source引用的是当前要被更新的文档。
需要注意的是使用这个写法,我们一次只能更新一个文档。在未来,Elasticsearch可能会提供根据查询条件更新多个文档的能力。(就像SQL中的UDPATE -WHERE语句)
本文系本人根据官方文档的翻译,能力有限、水平一般,如果对想学习Elasticsearch的朋友有帮助,将是本人的莫大荣幸。
https://www.elastic.co/guide/en/elasticsearch/reference/current/_updating_documents.html
Elasticsearch学习笔记-04.1更新文档
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。