elasticsearch - 在 Elasticsearch 中使用 update_by_query API 更新文档或插入
问题描述
根据 ES 中存在的记录查找更新或插入的 API。
我曾尝试使用 update_by_query,但如果它不存在,它不会创建任何记录。
POST track_index/track_type/_update_by_query
{"query": {"bool":
{"must": [{"match_phrase": {"tracking_id": 219215}},
{"match_phrase": {"order_id": 5401759}}]}},
"script": {"lang": "painless",
"inline": """ctx._source['loction']='IN';
ctx._source['tracking_id']=219215;
ctx._source['order_id']=5401759;
ctx._source['path']='/tmp'"""
}
}
有没有一种方法可以搜索和更新记录(如果存在)或创建新条目
解决方案
推荐阅读
- ssl - .app 域是否不需要单独的 SSL 证书
- angular - 如何在 cdk/scrolling 中执行 window.scrollTo 操作(自定义滚动条)
- android - 对话框打开时需要暂停的闪屏活动
- google-cloud-storage - 延迟从谷歌云存储桶中永久删除
- node.js - 如何从节点 js 中的 json 对象中删除 null、{}、[]?
- html - 如何使徽标与引导程序中的导航栏重叠?
- css - CSS Grid 中的 div 居中
- r - 如何使用 R 按组有效地将第一行的 NA 替换为 0
- json - 火花流写入流问题
- linux - bash函数内的税收计算给出错误:表达式中的语法错误