首页 > 数据库 >es数据库的基本操作

es数据库的基本操作

时间:2023-02-11 12:11:15浏览次数:42  
标签:name GET 数据库 查询 索引 match 基本操作 age es

 ES数据库的基本常识

关系型数据库(比如Mysql)
非关系型数据库(Elasticsearch)
数据库Database 
索引Index
表Table
类型Type
数据行Row 
文档Document
数据列Column
字段Field
约束 Schema
映射Mapping

 

1、查询全部索引
GET _cat/indices?v

2、查询数据
2.0、id查询
GET /索引名/类型名/文档Document ID

2.1、条件查询
查询name="张三"的数据

GET /索引名/类型名/_search
{
    "query":{
        "match":{
            "name":"张三"
        }
    }
}
2.2、过滤显示字段
使用"_source":["name","age"],过滤只显示name,age字段
GET /索引名/类型名/_search
{
    "query":{
        "match":{
            "name":"张三"
        }
    },
    "_source":["name","age"]
}

 

2.3、结果排序
使用"sort",age倒序排序
GET /索引名/类型名/_search
{
    "query":{
        "match":{
            "name":"张三"
        }
    },
    "sort":{
        "age":{
            "order":"desc"
        }
    }
    
}

 

 2.4、And查询(must)

查询name = 张三 且 age = 18

GET /索引名/类型名/_search
{ "query": { "bool": { "should": [ { "match": { "name": "张三" } }, { "match": { "age": 18 } } ] } } }

 

2.5、Not查询(must_not)

查看name != 张三 且 age != 18

GET /索引名/类型名/_search
{
  "query": {
    "bool": {
      "must_not": [
        {
          "match": {
            "name": "张三"
          }
        },
        {
          "match": {
            "age": 18
          }
        }
      ]
    }
  }
}

2.6、范围查询(filter)

查询name = 张三 且  18=< age >= 23

GET /索引名/类型名/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "name": "张三"
          }
        }
      ],
      "filter": [
        {
          "range": {
            "age": {
              "gte": 18,
              "lte": 23
            }
          }
        }
      ]
    }
  }
}

2.7、数组内多条件查询

查询tags数组内两个值为“学习”,“喝酒”

"tags":["学习","喝酒"]

GET /索引名/类型名/_search
{
  "query": {
    "match": {
      "tags": "喝酒 学习"
    }
  }
}

 

 

3、修改文档数据

修改name = 张无忌

POST /索引名/类型名/文档Document ID/_update
{
  "doc": {
    "name": "张无忌"
  }
}

 

4、插入数据

POST /索引名/类型名/

{
    "ip": "172.16.12.85",
    "timestamp": "1676081759"
}

 

 

5、更新数据

修改ip = 172.16.12.88

POST /索引名/类型名/文档Document ID/_update

{
  "doc":{
    "ip": "172.16.12.88"
  }
}

 

标签:name,GET,数据库,查询,索引,match,基本操作,age,es
From: https://www.cnblogs.com/ai594ai/p/17111186.html

相关文章