elasticsearch 基本语法

基本数据类型:

  字符串类型:text、keyword

  数值类型:long、integer、short、byte、double、float、half、scaled、float

  日期类型:date

  布尔值类型:boolean

  二进制类型:binary

  等等。

========

Rest 风格写法:

  PUT  localhost:9200/索引名称/类型名称/文档 id  创建文档(指定文档 id)【索引类比“库”,类型类比“表”】

  POST  localhost:9200/索引名称/类型名称  创建文档(随机文档 id)

  POST  localhost:9200/索引名称/类型名称/_search  查询所有数据

  POST  localhost:9200/索引名称/类型名称/文档 id/_update  修改文档

  GET  localhost:9200/索引名称/类型名称/文档 id  通过id查询文档

  DELETE  localhost:9200/索引名称/类型名称/文档 id  删除文档

==== 在 kibana 中的写法 ====

创建索引:

创建索引:(类似 mysql 创建库)【也可以通过 postman 使用 PUT 请求,像调用 api 的方式一样来发起请求创建:localhost:9200/test1】
PUT /test1

创建索引的同时设置字段【具体写法,参照官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/keyword.html】
PUT /test1
{
    "mappings":{
        "properties":{
            "name":{
                "type":"text"
            },
            "age":{
                "type":"long"
            },
            "birthday":{
                "type":"date"
            },
        }
    }
}

通过 postman 方式请求操作:

添加数据://不指定字段类型,会自动生成默认类型

PUT /test1/type/1  //使用 PUT 或者 POST 都可以
{
    "name":"mongo",
    "age":13,
    "birth":"2022-01-01"
}
如果该数据存在,仍继续这样操作,会变成以 id=1 的修改操作,而且是全量修改,就是如果个别参数不传,会直接修改没了

推荐的修改操作,使用 POST 加 _update ,指定什么参数就修改什么参数,不影响其他数据:

POST /test1/type/1/_update
{
    "doc":{  //修改操作,需要套在 doc 这一层 json 里面
        "name":"mongo2"
    }
}

删除索引:

DELETE test1

查询操作:

GET _cat/indices?v  //查看所有索引信息(类似于查看所有库所有表一样)
GET /mongo  //查看索引信息
GET /mongo/user/1  //根据 id = 1 查数据
查询全部数据:
GET /mongo/user/_search
根据一般条件查询:
GET /mongo/user/_search?q=age:23
根据条件查询,并且只查询想要返回的字段://类似:select name,age from user where name = "雪河"

多条件查询:(类似 where name = xx and age = xx)【must -> and;should -> or 】
查询结果排序:(有了排序逻辑之后,_score 分值就会失效,变为 null)

分页查询:

范围查询:gt 大于;gte 大于等于;lt 小于;lte 小于等于

 针对某个字段多关键字查询:(利用空格隔开,越匹配的 _score 分值越高)

 term 查询:(使用 term 查询某个字段,这个 name 字段的类型如果是普通 text 文本类型,是一个模糊查询;如果 name 是一个 keyword 类型,这里就会变成精确查询 )

多条件精确查询:

 

 

 keyword 关键字类型和普通 text 文本类型区别:(定义字段的时候,如果定义成 keyword 类型,将不会被分词器拆分,可以利用 term 做精确查询)

 

 自定义关键字高亮:

 

posted @ 2022-10-19 14:50  雪化山河  阅读(403)  评论(0编辑  收藏  举报