ES DSL 基础查询语法学习笔记
1、查询数量
1
2
3
4
5
6
7
|
curl -XGET 'http://192.168.6.97:9200/_count?pretty' -d ' { "query" : { "match_all" : {} } } ' |
2、查询所有文档
1
|
GET /index/type/_search ?pretty |
3、查询固定字段
1
|
GET /index/type/_search ?q=字段:搜索值 |
tip:相关性官方解释
Elasticsearch 默认按照相关性得分排序,即每个文档跟查询的匹配程度。第一个最高得分的结果很明显:John Smith 的 about 属性清楚地写着 “rock climbing” 。 但为什么 Jane Smith 也作为结果返回了呢?原因是她的 about 属性里提到了 “rock” 。因为只有 “rock” 而没有 “climbing” ,所以她的相关性得分低于 John 的。 这是一个很好的案例,阐明了Elasticsearch如何在 全文属性上搜索并返回相关性最强的结果。Elasticsearch中的相关性 概念非常重要,也是完全区别于传统关系型数据库的一个概念,数据库中的一条记录要么匹配要么不匹配。
4、短语搜索(类似关系型数据库中的短语搜索)
1
2
3
4
5
6
7
8
|
POST /index/type/_search { "query" : { "match_phrase" : { "字段" : "搜索值" } } } |
5、高亮搜索结果
1
2
3
4
5
6
7
8
9
10
11
12
13
|
POST /index/type/_search { "query" : { "match_phrase" : { "字段" : "搜索值" } }, "highlight" : { "fields" : { "字段" : {} } } }
|