重新設置mapping
添加新的字段。
設置es允許腳本執行:
elasticsearch.yml
script.inline: true
然后執行腳本
POST linewell_assets_mgt_es/lw_devices/_update_by_query?conflicts=proceed { "script":{ "lang":"painless", "inline":"if (ctx._source.update_time== null) {ctx._source.
update_time = '2018-01-01'}" } }
就可以為新添加的字段設置默認值。
如果不加conflicts=proceed會出現版本沖突
或者可以帶條件:
{ "script": { "inline": "ctx._source.camera_dev_conn_status='在線'" }, "query": { "match_phrase": { "camera_sbzt": "在用" } } }