gpt4 book ai didi

elasticsearch - ElasticSearch:POST更新,不包含索引,类型和ID

转载 作者:行者123 更新时间:2023-12-02 23:22:27 25 4
gpt4 key购买 nike

这是我在elasticsearch中的文件之一:

{
"_index": "2017-10-21",
"_type": "cat",
"_id": "14",
"_score": 2.2335923,
"_source": {
"name": "Biscuit",
"breed": "Persian",
"age": "3"
}
}

我知道可以通过这种方式执行 POST update将新字段添加到现有文档中:
POST [index] / [type] / [id] / _update 

因此,例如,如果我想在文档中添加一个新字段“hairy”:
POST 2017-10-21 / cat / 14 / _update

{
"script" : "ctx._source.hairy = 'yes'"
}

我将得到以下结果:
{
"_index": "2017-10-21",
"_type": "cat",
"_id": "14",
"_source": {
"name": "Biscuit",
"breed": "Persian",
"age": "3",
"hairy": "yes"
}
}

但是,我想为我的所有文档添加一个新字段,无论它们的索引,类型或ID。不幸的是,即使经过数小时的研究,我仍然没有找到一种无需使用索引,类型或ID即可完成 POST update的方法。

因此,我的问题是:可能吗?如果不是,还有另一种方法可以做我想做的事吗?

预先感谢您提供的任何帮助!

最佳答案

我终于找到了解决方案!

我需要使用POST update_by_query而不是POST update

POST * / _update_by_query
{
"script" : {
"inline": "ctx._source.hairy = 'yes'"
}
}

星号表示您要选择所有现有索引/索引

关于elasticsearch - ElasticSearch:POST更新,不包含索引,类型和ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47410222/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com