美文网首页
ElasticSearch Query查询

ElasticSearch Query查询

作者: zfh_51d2 | 来源:发表于2021-01-31 23:36 被阅读0次

    1.term查询和terms查询

    • term 和 terms 是 包含(contains) 操作,而非等值(equals)

    • 不知道分词器的存在,所以不会去分词

    • 所谓的包含是文档分词结果某个分词是否相等,即文档是否包含这个分词

    • 因为是在分词结果中匹配,所以大写要转换为小写,大写字母是匹配不到

    GET /star-articles/_search
    {  "query":{"term":{ "content":"今天"}}
    }
    
    GET /star-articles/_search
    {  "query":{"terms":{ "id":[6402,6403]}}
    }
    

    2.控制查询返回的数量

    GET /star-articles/_search
    {  
      "from":0,
      "size":2,
      "query":{"term":{ "content":"今天"}}
    }
    

    3.match查询

    match query知道分词器的存在,会对filed进行分词操作,然后再查询
    match_all:查询所有文档
    multi_match:可以指定多个字段
    match_phrase:短语匹配查询,ElasticSearch引擎首先分析(analyze)查询字符串,从分析后的文本中构建短语查询,这意味着必须匹配短语中的所有分词,并且保证各个分词的相对位置不变

    GET /star-articles/_search
    {  
      "query":{"match":{ "content":"今天吃火锅"}}
    }
    
    GET /star-articles/_search
    {  
      "query":{"match_all":{ }}
    }
    
    GET /star-articles/_search
    {  
      "query":{"match_phrase":{ "content":"今天吃火锅"}}
    }
    
    
    

    4.指定返回的字段

    GET /star-articles/_search
    {  
        "_source":["id","content"],
      "query":{"match":{ "content":"今天吃火锅"}}
    }
    

    5.排序

    前缀匹配查询"match_phrase_prefix", 并使用sort实现排序:desc:降序,asc升序

    GET /star-articles/_search
    {
        "query": {
            "match_phrase_prefix": {
              "content": "今天"
            }
        },
        
        "sort":[
          {
            "publishedAt":{"order": "desc"}
          }
          ]
    }
    

    6.范围查询

    range:实现范围查询

    GET /star-articles/_search
    {
        "query": {
            "range": {
                "publishedAt": {
                    "from": "2021-01-13",
                    "to": "2021-01-14",
                     "include_lower": true,
                    "include_upper": false
                }
            }
        }
    }
    

    7.高亮搜索结果

    GET /star-articles/_search
    {
        "query":{
            "match":{
                "content": "今天"
            }
        },
        "highlight": {
            "fields": {
                 "content": {}
            }
        }
    }
    
    

    相关文章

      网友评论

          本文标题:ElasticSearch Query查询

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