MYSQL语句:update index_name set name = ‘wb’ where id = ‘20132112534’;

POST /index_name/_update_by_query
{
  "query": {
    "bool": {
      "must": [
        {
          "term": {
            "id": "20132112534"
          }
        }
      ]
    }
  },
  "script": {
    "ctx._source['name'] = 'wb'"
  }
}
//或者
curl -XPOST http://host:9200/index_name/_update_by_query -H 'Content-Type: application/json' -d '
{
  "query": {
    "bool": {
      "must": [
        {
          "term": {
            "id": "20132112534"
          }
        }
      ]
    }
  },
  "script": {
    "ctx._source['name'] = 'wb'"
  }
}
'

MYSQL语句:update index_name set name = ‘wb’ where (a_time - b_time = 100000)

POST /index_name/_update_by_query
{
  "query": {
    "bool": {
      "must": [
        {
          "script": {
            "script": {
              "source": "doc['a_time'].value- doc['b_time'].value == 100000"
            }
          }
        }
      ]
    }
  },
  "script": {
    "source": "ctx._source.name = params.name",
    "params": {
      "name": "wb"
    }
  }
}
//或者
curl -XPOST http://host:9200/index_name/_update_by_query -H 'Content-Type: application/json' -d '
{
  "query": {
    "bool": {
      "must": [
        {
          "script": {
            "script": {
              "source": "doc['a_time'].value- doc['b_time'].value == 100000"
            }
          }
        }
      ]
    }
  },
  "script": {
    "source": "ctx._source.name = params.name",
    "params": {
      "name": "wb"
    }
  }
}
'

MYSQL语句:update index_name set sort_time = update_time where sort_time is null;

POST /index_name/_update_by_query
{
  "query": {
    "bool": {
      "must_not": [
        {
          "exists": {
            "field": "sort_time"
          }
        }
      ]
    }
  },
  "script": {
    "source": "ctx._source['sort_time'] = ctx._source['update_time']"
  }
}
//或者
curl -XPOST http://host:9200/index_name/_update_by_query -H 'Content-Type: application/json' -d '
{
  "query": {
    "bool": {
      "must_not": [
        {
          "exists": {
            "field": "sort_time"
          }
        }
      ]
    }
  },
  "script": {
    "source": "ctx._source['sort_time'] = ctx._source['update_time']"
  }
}
'
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐