ES2对数据的基本操作

前言

首先这里是关于ES2的,对ES6及以上的需要看另一篇文章,这个不适合
建议大家还是去Elastic的ES2教程看看细节,这里只是初步的记录一下
下面所有的语句都是直接用插件实现的,如果你用http(我是用postman)的话请在索引前加上ip和端口,
举个例子: get请求 127.0.0.1.9300/索引/类型/id


一、 创建

1、创建一个新的索引

put  新索引
{
  "settings": {
    "number_of_shards": 3,     //主分片
    "number_of_replicas": 1     //副本数
  },
  "mappings": {
    "doc": {                   //类型
      "properties": {
        "name": {
          "type": "string"
        },
        "age": {
          "type": "integer"
        },
        "date": {
          "type": "date",
          "format": "strict_date_optional_time||epoch_millis" //数据显示是long类型的
        }
      }
    }
  }
}

二、 添加

1、 指定id插入数据

put 索引/类型/指定的id
{
  "name": "xingming",
  "age": 22,
  "date": 1603683862
}

2、不指定id插入数据

post  索引/类型/
 {
  "name": "xingming",
  "age": 22,
  "date": 1603684892
}

三、修改

1、更新文档中的某个字段

post  索引/类型/id/_update
{
  "doc": {
    "name": "sss",
    "age": 33
  }
}

2、重置整个文档

put 索引/类型/id
{
	"字段名":新值
}

四、 删除

1、 删除文档

delete  索引/类型/id 
{}

2、 删除类型

Elasticsearch已经不支持删除一个type了,所以使用delete命令想要尝试删除一个type的时候会出现如下错误:
如果存在一个名为edemo的index和tets的type:
No handler found for uri [/edemo/test] and method [DELETE]
官方推荐的是重新删除索引再重新创建

3、 删除索引

delete  索引
{}

五、 查询

1、查询某索引/类型下所有的文档

指定索引类型

get 索引/类型/_search
{}

指定索引

get 索引/_search
{}

2、 根据id查询某个文档

get 索引/类型/id
{}

3、 根据特定字段查询

post 索引/_search
{
  "query": {
    "match": {
      "字段名": "值"
    }
  },
  "size": 搜索的数量
}
©️2020 CSDN 皮肤主题: 精致技术 设计师:CSDN官方博客 返回首页