ElasticSearch简称ES基础语法使用大全

一、查

1.匹配查询

注意:字符串搜索时,会对输入的查询字符串进行分析和分词,可能导致意外匹配或未匹配。

#搜索
GET /your_index/_search
{
    
    
  "query": {
    
    
    "match": {
    
    
    "news_id" : 100
  }}
}

2. 精确匹配字符串

注意:term 查询日期字符串时,因为映射方式不同可能存在匹配不到

GET /your_index/_search
{
    
    
  "query": {
    
    
    "term": {
    
    
    "title.keyword" : "superman"
  }}
}

3.匹配某字段为空

GET /your_index/_search
{
    
    
  "query": {
    
    
    "term": {
    
    
    "name.keyword" : ""
  }}
}

4.多条件匹配

GET /your_index/_search
{
    
    
  "query": {
    
    
    "bool": {
    
    
      "must": [
        {
    
     "match": {
    
     "name.keyword": "yunxiao" } },
        {
    
     "match": {
    
     "state": 1 } }
      ]
    }
  }
}

二、改

1. 通过es_id修改内容

POST /your_index/_update/es_id
{
    
    "doc": {
    
    
  "new_id": "123",
  "name": "小明",
  "status": 1
}}

2. 匹配修改内容

POST /your_index/_update_by_query
{
    
    
  "script": {
    
    
    "source": "ctx._source.status = 1"
  },
  "query": {
    
    
    "match": {
    
    
    "status " : 2
  }}
}

二、增

1.添加单个文档

POST /your_index/_doc
{
    
    
  "name" : "yunxiao",
  "age" : 18
}

三、删

1.通过_id删除

DELETE /your_index/_doc/_id_123456

2.匹配删除

POST /your_index/_delete_by_query
{
    
    
  "query": {
    
    
    "match": {
    
    
      "status": 0
    }
  }
}