elasticSearch(1)--基本CURD

创建文档:

  1. :创建文档时候如果索引不存在,es会自动创建对应的索引和type PUT/index/type/id
    _version:每次更改加一
  2. :如果只想创建文档不使用PUT命令来update文档,则可以使用:
    PUT/index/type/id/_create
    或者:
    PUT/index/type/id?op_type=create
  3. :自动生成id
    POST/index/type/

查询文档:

  1. 根据id查询文档内容
    GET/index/type/id
    _source:存储的json文档内容
  2. 将查询结果中的source字段隐藏
    GET/index/type/id?_source=false
  3. 只获取_source中的内容
    GET/index/type/id/_source
  4. 选取查询结果中source中某几个字段,并且隐藏一些字段
    GET/index/type/id?souce_includes=field&source_excludes=password
  5. 如果你只想选取source中的某几个字段,多个字段用,隔开
    GET/index/type/id?_source=field,field
  6. Store Field:如果你想查询的时候不想存储某个字段,则可以使用一下语法
    新建mapping,将field中store属性设置为false,则在查询的时候带上store属性可以达到隐藏的效果
PUT twitter
{
   "mappings": {
      "_doc": {
         "properties": {
            "counter": {
               "type": "integer",
               "store": false
            },
            "tags": {
               "type": "keyword",
               "store": true
            }
         }
      }
   }
}
查询:

GET/index/type/id?store_field=counter,tags

删除

  1. 通过restAPI对文档进行删除
    DELETE /index/type/id

  2. 通过_delete_by_query来对match的内容进行删除

POST twitter/_delete_by_query
{
  "query": { 
    "match": {
      "job": "coder"
    }
  }
}

更新

  1. PUT /index/type/id

  2. 使用脚本进行跟新:
    有以下文档:

PUT test/_doc/1
{
  "counter":1,
  "tags":["red"]
}
POST test/_doc/1/_update
{
  "script":{
    "source":"ctx._source.counter+=params.count",
    "lang":"painless",
    "params":{
      "count":4
    }
  },
  "upsert": {
    "counter":1
  }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值