文档操作
新增文档
语法
如果不指定文档id,那么es将随机生成一个文档id
POST /索引库名/_doc/文档id
{
"字段1": "值1",
"字段2": "值2",
"字段3": {
"子属性1": "值3",
"子属性2": "值4"
},
// ...
}
示例
POST /bttc/_doc/1
{
"info":"谁把爷电动车骑走了?",
"email":"it_chenbo@163.com",
"name":{
"firstName":"四",
"lastName":"李"
}
}
查询文档
语法
GET /{索引库名称}/_doc/{id}
示例
GET /bttc/_doc/1
删除文档
语法
DELETE /{索引库名}/_doc/id值
示例
# 根据id删除数据
DELETE /bttc/_doc/1
修改文档
修改有两种方式:
- 全量修改:直接覆盖原来的文档
- 增量修改:修改文档中的部分字段
全量修改
全量修改是覆盖原来的文档,其本质是:
- 根据指定的id删除文档
- 新增一个相同id的文档
注意:如果根据id删除时,id不存在,第二步的新增也会执行,也就从修改变成了新增操作了。
语法
PUT /{索引库名}/_doc/文档id
{
"字段1": "值1",
"字段2": "值2",
// ... 略
}
示例
PUT /bttc/_doc/1
{
"info": "谁把爷电动车骑走了?",
"email": "it_chenbo@163.com",
"name": {
"firstName": "五",
"lastName": "李"
}
}
增量修改
增量修改是只修改指定id匹配的文档中的部分字段。
语法
POST /{索引库名}/_update/文档id
{
"doc": {
"字段名": "新的值",
}
}
示例
POST /bttc/_update/1
{
"doc": {
"email": "it_chenbo@126.com"
}
}