ES2对数据的基本操作

目录

  • 前言
  • 一、 创建
    • 1、创建一个新的索引
  • 二、 添加
    • 1、 指定id插入数据
    • 2、不指定id插入数据
  • 三、修改
    • 1、更新文档中的某个字段
    • 2、重置整个文档
  • 四、 删除
    • 1、 删除文档
    • 2、 删除类型
    • 3、 删除索引
  • 五、 查询
    • 1、查询某索引/类型下所有的文档
    • 2、 根据id查询某个文档
    • 3、 根据特定字段查询

前言

首先这里是关于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": 搜索的数量
}

你可能感兴趣的:(#,ElasticSearch,elasticsearch)