zoukankan      html  css  js  c++  java
  • es head 新增字段并赋值

    //新增字段
    请求url:http://111.11.11.111:19200/es的index/_mapping/es的type/
    请求方法:put
    数据格式:
    {
      "es的type": {
        "properties": {
          "字段1": {
            "type": "string"
          },
          "字段2": {
            "type": "string"
          }
        }
      }
    }
    //赋值
    请求url:http://111.11.11.111:19200/es的type/_update_by_query/
    请求方法:post
    数据格式:
    {
      "script": {
        "lang": "painless",
        "inline": "ctx._source.字段= '值' "
      }
    }

    ElasticSearch的update_by_query语句可以很方便地为原有es表修改字段和新增字段,如下面的例子所示:

    1.将资产表中area为空的字段赋值为'无'

    POST soc-system/_update_by_query
    {
      "script": {
        "source": "ctx._source['area']='无'" 
      },
      "query": {
        "bool": {
          "must_not": [
            {
              "exists": {
                "field": "area"
              }
            }
          ]
        }
      }
    }


    2.添加一个网段字段,其值根据已有字段ip截取而来

    POST soc-system/_update_by_query
    {
      "script": {
        "source": "def a=ctx._source['ip'].lastIndexOf('.');def sec=ctx._source['ip'].substring(0,a);ctx._source['ipSection']=sec+'.0'"
      },
      "query": {
        "bool": {
          "must": [
            {
              "exists": {
                "field": "ip"
              }
            }
          ]
        }
      }
    }


    其中script的语法为painless
     

    正因为当初对未来做了太多的憧憬,所以对现在的自己尤其失望。生命中曾经有过的所有灿烂,终究都需要用寂寞来偿还。
  • 相关阅读:
    指定时间的月初和月末一天的写法
    EF写distinct
    服务的调试和安装
    EF写INNER JOIN 链接
    BZOJ 1825: [JSOI2010]蔬菜庆典
    P4171 [JSOI2010]满汉全席
    Educational Codeforces Round 71 (Rated for Div. 2) Solution
    P4292 [WC2010]重建计划
    P3724 [AH2017/HNOI2017]大佬
    P5504 [JSOI2011]柠檬
  • 原文地址:https://www.cnblogs.com/candlia/p/11919903.html
Copyright © 2011-2022 走看看