update_by_query 顧名思義,通過查詢更新,既先query出符合條件的內容再進行update操作,新增字段,修改字段值都可以滿足
demo:
es = Elasticsearch() body = { "script": { "lang": "painless", # "inline": "if (ctx._source.test_code == null) {ctx._source.test_code= '02'}" "inline": "ctx._source.kw_sourceType= 'trueTime'" #新增字段kw_sourceType值為trueTime } } res = es.update_by_query(index="hot_rank", doc_type="baidu_hot_search_rank", body=body)
painless更多內容參見:https://blog.csdn.net/u013613428/article/details/78134170#%E9%80%9A%E8%BF%87painless%E6%9B%B4%E6%96%B0%E5%AF%B9%E8%B1%A1%E5%80%BC
update_by_query更多內容參見:
https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-update-by-query.html