13 多字段排序

假定我们想要结合使用 age 和 _score 进行查询,并且匹配的结果首先按照年龄排序,然后

按照相关性得分排序

在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_高亮

 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_高亮_02

服务器响应结果:

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_高亮_03

14 高亮查询

在进行关键字搜索时,搜索出的内容中的关键字会显示不同的颜色,称之为高亮。

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_大数据_04

Elasticsearch 可以对查询内容中的关键字部分,进行标签和样式(高亮)的设置。

在使用 match 查询的同时,加上一个 highlight 属性:

pre_tags:前置标签

post_tags:后置标签

fields:需要高亮的字段

title:这里声明 title 字段需要高亮,后面可以为这个字段设置特有配置,也可以空

在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_服务器_05

 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_服务器_06

服务器响应结果:

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_elasticsearch_07

15 分页查询

from:当前页的起始索引,默认从 0 开始。 from = (pageNum - 1) * size

size:每页显示多少条

在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_elasticsearch_08

 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_服务器_09

服务器响应结果: 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_字段_10

16 聚合查询

聚合允许使用者对 es 文档进行统计分析,类似与关系型数据库中的 group by,当然还有很

多其他的聚合,例如取最大值、平均值等等。

对某个字段取最大值 max

在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_高亮_11

服务器响应结果:

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_elasticsearch_12

对某个字段取最小值 min

在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_大数据_13

服务器响应结果: 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_服务器_14

对某个字段求和 sum

在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_字段_15

服务器响应结果:

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_大数据_16

对某个字段取平均值 avg

在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_高亮_17

 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_字段_18

服务器响应结果:

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_服务器_19

对某个字段的值进行去重之后再取总数

在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_字段_20

服务器响应结果: 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_字段_21

State 聚合

stats 聚合,对某个字段一次性返回 count,max,min,avg 和 sum 五个指标

在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_elasticsearch_22

服务器响应结果:

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_高亮_23

17 桶聚合查询

桶聚和相当于 sql 中的 group by 语句

terms 聚合,分组统计

在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_高亮_24

服务器响应结果:

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_服务器_25

在 terms 分组下再进行聚合

在 Postman 中,向 ES 服务器发 GET 请求 :http://127.0.0.1:9200/student/_search 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_服务器_26

 

【硬刚ES】ES入门 (9) 语法(7)DQL(4)多字段排序/高亮查询/分页查询/聚合查询/桶聚合查询_大数据_27