IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Elasticsearch学习笔记(二) -> 正文阅读

[大数据]Elasticsearch学习笔记(二)

高级查询

查看所有文档

查看匹配的文档

、向ES服务器发送GET请求:localhost:9200/shopping/_search

{
    "query":{
        "match":{
            "title":"西游记"
        }
    }
}

查看全部的文档

{
    "query":{
        "match_all":{
            
        }
    }
}

分页查询

{
    "query":{
        "match_all":{
        }
    },
    "from":0,
    "size":1
}

image-20211110161200805

如果不想匹配source中的所有字段可以在请求体中添加条件

{
    "query":{
        "match_all":{
        }
    },
    "_source":["title"]
}

可以在添加"_source"后在中括号中添加想要显示的字段。

image-20211110161651587

根据条件进行排序

image-20211110162040641

{
    "query":{
        "match_all":{
        }
    },
    "sort":{
        "price":"desc",根据price字段进行降序排序
    }
}

组合查询

{
    "query":{
        "bool":{
            "must":[
                {
                    "match":{
                    "title":"西游记"
                    }
                },
                {
                    "match":{
                    "price":33.00
                    }
                }
            ]
        }
    }
}

"must"表示且的意思,也就是匹配的数据需要title为西游记,price为33.00

"should"表示或的意思,任一个匹配到就可以。

范围查询

使用range字段查询出在指定范围的数据。

image-20211110164649615

{
    "query":{
        "range":{
            "price":{
                // "gt":23.00,
                "gte":23.00
            }
        }
    }
}

全文检索

{
    "query":{
        "match":{
            "title":"甜西",会对这个词进行差分,分别进行匹配
        }
    }
}

完全匹配

{
    "query":{
        "match_phrase":{
            "title":"西甜"
        }
    }
}

使用match_phrase进行完全匹配

模糊匹配

{
    "query":{
        "match":{
            "title":"西游记"
        }
    },
    "highlight":{
        "fields":{
            "title":{}
        }
    }
}

image-20211110174508874

聚合查询

分组显示

{
    "aggs":{ //聚合查询
        "price_group":{ //名称,随意起名
            "terms":{ //分组
                "field":"price" // 分组字段
            }
        }
    }
}

image-20211110180116099

显示平均值

{
    "aggs":{ //聚合查询
        "price_avg":{ //名称,随意起名
            "avg":{ //平均值
                "field":"price" // 分组字段
            }
        }
    },
    "size":0 //不显示原始数据
}

image-20211110180427002

映射关系

{
    "properties":{
        "name":{
            "type":"text", // 可以使用分词
            "index":true // 可以被索引
        },
        "sex":{
            "type":"keyword",// 关键词,不能分词
            "index":true  // 可以被索引
        },
        "tel":{
            "type":"keyword",
            "index":false // 不能被索引
        }
    }
}

首先创建索引,使用PUT请求,

image-20211110182030825

查看映射使用GET请求

image-20211110182353011

查询

因为name字段设置的映射为text,可以使用分词器,所以查询时可以查出数据

image-20211110183243080

因为sex字段使用的是keyword,因此查询男不能查出来,需要查询男的

image-20211110183034011

因为tel字段设置的不能被索引,因此查询tel字段无法查出数据

image-20211110183136180

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-11-12 19:39:55  更:2021-11-12 19:41:06 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 5:38:07-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码