bal*_*a s 8 arraylist elasticsearch amazon-elastic-beanstalk
如何使用sense console或curl删除Elasticsearch中的arraylist值?
我想删除任何数组元素.?
POST /q/q/
{
"a": [
"z", "q", "1"
]
}
Run Code Online (Sandbox Code Playgroud)
它对我不起作用:
POST /q/q/AV4sjk40mWHLgYFNkmNd/_update
{
"script": {
"lang": "painless",
"inline": "ctx._source.a -=newsupp",
"params": {
"newsupp": "p"
}
}
}
Run Code Online (Sandbox Code Playgroud)
要么
POST /q/q/AV4sjk40mWHLgYFNkmNd/_update
{
"script": {
"lang": "painless",
"inline": "ctx._source.a.remove("1")"
}
}
Run Code Online (Sandbox Code Playgroud)
小智 14
如果要删除列表中的所有匹配项,可以执行以下操作:
{
"script": {
"lang": "painless",
"inline": "ctx._source.a.removeAll(Collections.singleton('1'))"
}
}
Run Code Online (Sandbox Code Playgroud)
或者如果你想删除第一个,如下所示:
{
"script": {
"lang": "painless",
"inline": "ctx._source.a.remove(ctx._source.a.indexOf('1'))"
}
}
Run Code Online (Sandbox Code Playgroud)
另请注意,如果你想使用双引号,那很好,但你需要逃避它们,比如ctx._source.a.indexOf(\"1\")).
或者使用params:
{
"script": {
"lang": "painless",
"inline": "ctx._source.a.remove(ctx._source.a.indexOf(yourParamName))",
"params": {
"yourParamName": "1"
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4159 次 |
| 最近记录: |