重新设置mapping

es新增字段,并设置默认值

添加新的字段。

设置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": "在用"
    }
  }

}

 

相关文章:

  • 2022-12-23
  • 2021-09-06
  • 2022-12-23
  • 2021-05-29
  • 2021-06-18
  • 2021-05-20
  • 2022-12-23
  • 2021-11-20
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-10-18
  • 2021-07-15
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案