ElasticSearch教程--第十一章:修改您的数据--更新文档

转载自:http://blog.sina.com.cn/s/blog_63c8a9170102wlk3.html

本篇教程翻译自ElasticSearch官方教程,原文地址: ElasticSearch
其他章节见: ElasticSearch教程

第十一章:修改您的数据--更新文档

除了能够索引和替换文档,我们也可以更新文档。注意,虽然Elasticsearch现在不做就地更新。但是只要我们一做更新,Elasticsearch会删除旧的文档,然后索引一个新的文档并且在上面实时更新。

下面的例子展示了如何更新我们之前的文档(ID为1),将之前的姓名字段改为“Jane Doe”:
curl -XPOST 'localhost:9200/customer/external/1/_update?pretty' -d '
{
   "doc": { "name": "Jane Doe" }
}'

下面的例子展示了如何更新我们之前的文档(ID为1),将之前的姓名字段改为“Jane Doe”,同时给它增加一个年龄字段:
curl -XPOST 'localhost:9200/customer/external/1/_update?pretty' -d '
{
   "doc": { "name": "Jane Doe", "age": 20 }
}'

可以通过简单的脚本执行更新。注意,如下的动态脚本是默认禁用的直到1.4.3,如果您想了解更多细节,请看 scripting docs。下面的例子使用一个脚本来给年龄增加5:
curl -XPOST 'localhost:9200/customer/external/1/_update?pretty' -d '
{
   "script" : "ctx._source.age += 5"
}'

在上面的例子,ctx._source代表要更新的那个源文档。

注意,直到写这篇教程为止,一次只能对一个文档进行更新。在未来,Elasticsearch可能会提供一个查询条件(就像SQL的UPDATE-WHERE语句)来更新多个文档。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值