ES常用基础语法——查询语法

该文详细列举了Elasticsearch的一系列操作,包括添加字段到映射,查询特定字段存在,删除索引类型数据,以及多条件查询等。还涉及到了如何使用布尔查询进行范围和正则表达式过滤,管理别名,统计Linux环境中的ES数据,插入文档,检查健康状态和处理分片问题。
摘要由CSDN通过智能技术生成

ES常用操作

1、添加字段

PUT /索引名/_mapping
{
  "properties": {
    "businessid": {
      "type": "keyword"
    }
  }
}

2、查询某个字段必须存在

GET /索引名/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "exists": {
            "field": "auto_insurance_policy"
          }
        }
      ]
    }
  },"_source": ["name","credential_no","auto_insurance_policy"]
  , "size": 100
}

3、删除索引type为4的数据

POST /索引名/_delete_by_query
{
  "query": {
    "match": {
      "type": "4"
    }
  }
}

4、删除索引

DELETE  /索引名

5、多条件查询

GET /索引名/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "type": "2"
          }
        },
        {
          "match": {
            "lio": "edfcvwsd"
          }
        }
      ]
    }
  }
} 

6、ES大于小于

gte是大于等于 gt是大于 lte是小于等于 lt是小于

GET /索引名/_search
{
"query": {
"range": {
"pt_dt": {
"gte": "2023-07-20"
      }
    }
  }
}

7、查询索引中time字段长度大于20的值

GET 索引名/_search
{
"query": {
"bool": {
"filter": {
"regexp": {
"time": {
"value": ".{20,}"
          }
        }
      }
    }
  }
}

8、ES添加别名的语法和查询别名的语法

POST /_aliases
{
"actions" : [
    { "add" : { "index" : "gfds", "alias" : "lzdsy" } },
    { "add" : { "index" : "jhgfd", "alias" : "lzdsy" } },
    { "add" : { "index" : "ytrew", "alias" : "lzdsy" } },
    { "add" : { "index" : "nbvc", "alias" : "lzdsy" } }
  ]
}

POST /_aliases
{
"actions" : [
    { "add" : { "index" : "qazxftrds", "alias" : "lzdsy" } }
  ]
}
GET lzdsy/_alias

9、LINUX中ES统计数据的命令

curl -XGET  -H "Content-Type: application/json" '29.16.132.20:80/1013_dwa_policy_summary_auto/_count' 

10、ES插入数据

POST 索引名/_doc/1f573878273511dc13509f03c422095d
{
"key" : "1f573878273511dc13509f03c422095d",
"num" : "粤567891a",
"pt_date" : "2023-05-29"
}

11、超多条件查询

GET /索引名/_search
{
  "_source": [
    "timeEnd",
    "coverageCode"
  ],
  "from": 0,
  "query": {
    "bool": {
      "filter": [
        {
          "range": {
            "quotationDate": {
              "gte": "2021-01-01",
              "lte": "2021-02-02"
            }
          }
        }
      ],
      "must": [
        {
          "term": {
            "telSalesmanCode": "22002202"
          }
        },
        {
          "term": {
            "deptGroupCode": "22002202"
          }
        },
        {
          "term": {
            "officeCode": "22002202"
          }
        },
        {
          "bool": {
            "should": [
              {
                "term": {
                  "qaz": "876543234567"
                }
              },
        {
          "term": {
            "edc": "22002202"
          }
        }
      ]
    }
  },
  "size": 20
}

12、ES健康状态

curl http://192.168.28.11:80/_cat/health?v  

查看分片

curl http://192.168.28.11:80/_cat/shards 

13、分片丢失修复 重置分片

curl -XPOST  -H "Content-Type: application/json" '192.168.28.11:80/_cluster/reroute' -d '{
"commands": [
    {
"allocate_empty_primary": {
"index": ".kibana_task_manager_1",
"shard": 0,
"node": "node-222",
"accept_data_loss": true
      }
    }
  ]
}
'

14、检查字段是否已新增

GET 索引名/_mapping

15、根据字段查询值

GET 索引名/_search
{
  "query": {
    "match": {
      "key": "00525cf74a78a9262c6f9ced1a5bb559"
    }
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

忘的比学的还快

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值