💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、豆包、星火、月之暗面及文生图、文生视频 广告
# 更新文档 除了可以索引、替换文档之外,我们也可以更新一个文档。但要注意,Elasticsearch底层并不支持原地更新。在我们想要做一次更新的时候,Elasticsearch先删除旧文档,然后再索引新的文档。 下面的例子展示了怎样将ID为1的文档的name字段改成“Jane Doe”: ``` POST /customer/doc/1/_update?pretty { "doc": { "name": "Jane Doe" } } ``` 下面的例子展示了怎样将ID为1的文档的name字段改成“Jane Doe”的同时,给它加上age字段: ``` POST /customer/doc/1/_update?pretty { "doc": { "name": "Jane Doe", "age": 20 } } ``` 更新也可以通过使用简单的脚本来进行。这个例子使用一个脚本将age加5: ``` POST /customer/doc/1/_update?pretty { "script" : "ctx._source.age += 5" } ``` 在上面的例子中,`ctx._source`指向当前被更新的文档。 Elasticsearch提供同时更新符合指定查询条件的多个文档的功能(类似于SQL的`UPDATE-WHERE`语句)。See [docs-update-by-query API](https://www.elastic.co/guide/en/elasticsearch/reference/6.0/docs-update-by-query.html) > my note > > Elasticsearch底层并不支持原地更新。在我们想要做一次更新的时候,Elasticsearch先删除旧文档,然后再索引新的文档。