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这个关键词
              }
           }
         } 

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

  • 相关阅读:
    xStream完美转换XML、JSON
    遍历Map的四种方法(转)
    MyEclipse下的svn使用(转)
    tomcat部署,tomcat三种部署项目的方法
    Linux常用命令大全
    MAP
    (转)数据库索引作用 优缺点
    MySql 总结
    python中easygui的安装方法
    python中easygui的安装方法
  • 原文地址:https://www.cnblogs.com/yu-hailong/p/8087456.html
Copyright © 2011-2022 走看看