美文网首页
ES搜索(二)query查询

ES搜索(二)query查询

作者: echo_ye4 | 来源:发表于2017-09-21 16:22 被阅读0次

ES可以使用URI或DSL进行查询

URI

GET /megacorp/employee/_search?q=last_name:Smith

由于DSL可以提供更多功能,以及可视化更好,一般都使用DSL进行查询

一个典型的DSL查询结构

"query" :{
    "match": {
        "last_name": "Smith"
    }
}

常用的查询方法:
match_all:简单的匹配所有文档,是默认查询方式
match:在执行查询前,使用分析器去分析查询字符串
multi_match:可以在多个字段上执行相同的match查询
match_phrase:短语查询,不对查询字符串进行分析
range:查询区间内的数字或者时间
term:精确值查询,常用于数字、时间、布尔值
terms:与term一样,允许指定多个值进行匹配
exists:是否存在
missing:是否确实

组合查询(多个查询条件)

"query" :{
    "bool": {
        "must":     { "match": { "tweet": "elasticsearch" }},
        "must_not": { "match": { "name":  "mary" }},
        "should":   { "match": { "tweet": "full text" }},
        "filter":   { "range": { "age" : { "gt" : 30 }} }
    }
}

must:文档必须匹配这些条件才能被包含进来
must_not:文档必须不包含这些条件才能包含进来
should:若匹配这些条件,可以增加_score,主要用于修正相关性得分
filter:必须匹配,但以过滤模式来进行,对评分没有贡献

查询组件包含:过滤与查询两个模式,并可以无限搭配

使用查询时,是一个评分查询,返回匹配率
当使用过滤时,不进行评分,返回YES OR NO

一般情况下,过滤比查询性能更优(查询需要匹配外,还需要计算相关性);通常的规则是,使用查询语句进行全文搜索或者其他需要影响相关性得分的搜索,除此之外使用过滤

参考:https://elasticsearch.cn/book/elasticsearch_definitive_guide_2.x/full-body-search.html

相关文章

  • ES搜索(二)query查询

    ES可以使用URI或DSL进行查询 URI 由于DSL可以提供更多功能,以及可视化更好,一般都使用DSL进行查询 ...

  • Elasticsearch基础概念之查询流程

    ES查询流程 查询流程总体可以分为以下几个部分 请求解析 搜索Query阶段 搜索Fetch阶段 数据排序和合并 ...

  • Elasticsearch Search API之(Reques

    本节将详细介绍es Search API的查询主体,定制化查询条件的实现主体。 query 搜索请求体中查询条件使...

  • ES查询语法

    ES查询语法 Query_string 1. Query_string 1.1 Query_string (不常用...

  • Lucene--搜索

    Lucene--搜索 一、创建查询对象的方式 对要搜索的信息创建Query查询对象,Lucene会根据Query查...

  • Elasticsearch TermQuery 详解

    JavaClient 查询ES 1、term query 分词精确查询,查询hotelName 分词后包含 hot...

  • 07_Lucene搜索

    搜索 对要搜索的信息创建Query查询对象,Lucene会根据Query查询对象生成最终的查询语法,类似关系数据库...

  • es

    es种有两种查询模式,一种是像传递URL参数一样去传递查询语句,被称为简单搜索或查询字符串(query strin...

  • Elasticsearch查询规则(一)match和term

    es种有两种查询模式,一种是像传递URL参数一样去传递查询语句,被称为简单搜索或查询字符串(query strin...

  • elasticsearch各种查询用法

    下图我存入es的一条测试数据,基于这条数据我们来看下es的各种查询方法 一·词条搜索①term query这个是基...

网友评论

      本文标题:ES搜索(二)query查询

      本文链接:https://www.haomeiwen.com/subject/bmnzsxtx.html