【ES】 es | Elasticsearch 教程 | DSL命令 | 命令操作es

78 篇文章 0 订阅
8 篇文章 0 订阅

一、说明

        1、通过kibana操作es

        2、使用dsl命令操作es

        3、需要已经安装es,必须

        4、需要已经安装kibana,非必须

        5、若是没有装kibana,可以用PostMan之类的请求工具

二、基础知识

1、Elasticsearch和RDBMS比较

 

说明1: es与传统关系数据的对应关系,初学重点了解索引,字段,文档

说明2: 最重要的是索引,文档

2、可以到菜鸟过一遍介绍

https://www.cainiaojc.com/elasticsearch/elasticsearch-basic-concepts.html

~~

三、命令

1、创建索引

1)命令

PUT hg-index

说明1: hd-index即索引名

2)成功示例

 

~~

2、增加数据

1)格式

POST ${索引}/${类型}/${ID}  ${JSON消息体}

2)示例

POST hg-index/_doc/003
{
"name":"qf223x"
}

3)成功示例

~~

 3、修改数据

 1)格式

PUT ${索引}/${类型}/${ID}  ${JSON消息体}

2)示例

PUT hg-index/_doc/003
{
"name":"qf223x_put"
}

 3)响应结果

 

~~

4、查询所有

1)命令

GET hg-index/_search
{
  "query": {
    "match_all": {}
  }
}

说明1: hg-index为索引

说明2: _search为关键字,固定格式,记住即可

说明3: query : {"match_all":{}},固定格式,记住即可

2)响应数据

~~

5、模糊查询-通配符

1)关键字

wildcard

2)示例

GET hg-index/_search
{
    "query": {
        "wildcard" : { "name": "*223*" }
    }
}

说明1: 通配符, *

说明2: 占位符, ?

说明3: 通配符类似mysql的like

说明4: 占位符,即占一位

3)结果

 

~~

6、模糊查询-前缀

1)关键字

prefix

2)示例1

GET hg-index/_search
{ "query": {
    "prefix" : { "name": "qf" }
  }
}

3)结果1

4)示例2

GET hg-index/_search
{ "query": {
    "prefix" : { "name": "qfx" }
  }
}

5)结果2

 

~~

7、模糊查询-相似度

1)关键字

fuzzy 

说明1: 是一种误拼写时的fuzzy模糊搜索技术,用于搜索的时候可能输入的文本会出现误拼写的情况。

2)示例

GET hg-index/_search
{
    "query": {
        "fuzzy" : {
            "name": {
                "value": "qpx",
                "fuzziness": 1,
                "prefix_length": 1,
                "max_expansions": 100
            }
        }
    }
}

说明1: fuzziness:最大编辑距离【一个字符串要与另一个字符串相同必须更改的一个字符数】。默认为AUTO。
说明2: prefix_length:不会被“模糊化”的初始字符数。这有助于减少必须检查的术语数量。默认为0。
说明3: max_expansions:fuzzy查询将扩展到的最大术语数。默认为50。
说明4: transpositions:是否支持模糊转置(ab→ ba)。默认值为false。

3)结果

 

~~

8、查询非空值

1)构造初始化数据

POST hg-index/_doc/005
{
"name":""
}
POST hg-index/_doc/004
{
"name":null
}

2)命令:显示所有

GET hg-index/_search
{
  "query": {
    "match_all": {}
  }
}

3)显示非空

GET hg-index/_search
{
    "query": {
        "exists" : { "field" : "name" }
    }
}

 

说明1: 004被过滤掉了,即null值被过滤掉了

~~

9、查询null值

1)命令

GET hg-index/_search
{
    "query": {
        "bool": {
            "must_not": {
                "exists": {
                    "field": "name"
                }
            }
        }
    }
}

2)结果

 

~~

10、其他查询

1)参考其他博主的内容

https://blog.csdn.net/qq_45443475/article/details/127359991

~~

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值