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"  : {
             "字段"  : {}
         }
     }
}

 

猜你喜欢

转载自www.cnblogs.com/xzlive/p/10386826.html