zoukankan      html  css  js  c++  java
  • 高级查询query

    子条查询 特定字段查询所有特定值
    子条件查询(Query context Filter context)两种查询方式
    1)Query context:
    在查询过程中,除了判断文档是否满足查询条件之外,es还会计算一个_score来标识匹配的程度,旨在判断目标文档和查询条件匹配的有多好(吻合度)。
    常用查询:
    全文本查询 针对文本类型数据
    字段级别查询 针对结构化数据,如数字,日期等
    1.全文本查询:

    127.0.0.1/book/_search
    
        { 
         "query"{  //关键词
             "match":{ //模糊查询关键词
            "author":"瓦力"
            }
             }
          }
          模糊查询问题(不精确)
        match_phrase  //短语句匹配(完全匹配)
    
        { 
         "query"{  //关键词
             "match_phrose":{ //模糊查询关键词
            "author":"瓦力"
            }
             }
          }

    完全匹配可能比较严,我们会希望有个可调节因子,少匹配一个也满足,那就需要使用到slop。

    {
          "query": {
            "match_phrase": {
            "content" : {
                "author" : "我的宝马多少马力",
                "slop" : 1
            }
            }
          }
        }

    多个匹配查询(multi_match)

    {
          "query": {
            "multi_match": {
            "query" : "我的宝马多少马力",  //query信息,要查询的数据,比如要查询(我的宝马多少马力)
            "fields" : ["title", "content"] //指定查询的字段,关系为或
            }
          }
        }

    语法查询(query_string)

    {
         "query_string":{
            "query": "aaaa"//指定的查询内容关键词
          }
         }

     查询多个数据

    {
         "query_string":{
            "query": "(aaaa) OR python"//指定的查询内容关键词,查询aaa或者python的关键词
          }
         }

    查询多个字段

     {
         "query_string":{
            "query": "aaaa OR python"//指定的查询内容关键词,查询aaa或者python的关键词
            "field":["title","author"]//指定查询的字段
          }
         }

    2.结构化的查询:

    {
          "query":{
             "term":{//关键词,具体象
               "word_count":1000   //例如字段字数在某个特定值的数值
               
              }
           }
         }

     范围查询:

    {
          "query":{
             "range":{//关键词,范围
               "word_count":1000   //指定例如字段word_count字数在某个范围的数值
               "get":1000 //大于等于1000 ge 等于
               "lte":2000 //小于等于2000 如时间,2000改为now这个关键词
              }
           }
         } 

    条件查询   以一定的逻辑组和子条件查询

  • 相关阅读:
    最短路径之spfa
    最短路径之Bellman-Ford——解决负权边
    最短路径之Floyd-Warshall算法
    图上最短路径问题
    它们其实都是图(二分图)
    记忆化结果再利用 进一步探讨递推关系
    leetcode 376. 摆动序列 java
    leetcode 368. 最大整除子集 java
    leetcode 96. 不同的二叉搜索树 java
    leetcode 454. 四数相加 II java
  • 原文地址:https://www.cnblogs.com/yu-hailong/p/8087456.html
Copyright © 2011-2022 走看看