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

    Query Content

    在查询过程中,除了判断文档是否满足查询条件外,ES还会计算一个_score来标识匹配的程度,旨在判断目标文档和查询条件的匹配有多好

    #

    POST 192.168.100.102:9200/book/_search

    {

      "query": {

        "match": {

          "author": "金庸"

        }

      }

    }

    #

    POST 192.168.100.102:9200/book/_search

    {

      "query": {

        "match": {

          "title": "入门"

        }

      }

    }

    #

    POST 192.168.100.102:9200/book/_search

    {

      "query": {

        "match_phrase": {

            "title": "入门"

           }

      }

    }

    #

    POST 192.168.100.102:9200/book/_search

    {

      "query": {

        "multi_match": {

          "query": "金庸",

          "fields": ["author", "title"]

          }

      }

    }

     #

    POST 192.168.100.102:9200/book/_search

    {

       "query": {

        "query_string": {

          "query": "(java AND ) OR "

          }

      }

    }

    #

    POST 192.168.100.102:9200/book/_search

    {

      "query": {

        "query_string": {

          "query": "java OR ",

          "fields": ["title", "author"]

         }

       }

    }

    #

    POST 192.168.100.102:9200/book/_search

    {

      "query": {

        "term": {

          "word_count": 100000

          }

      }

    }

    #gte:greater than  equal

    POST 192.168.100.102:9200/book/_search

    {

      "query": {

        "range": {

          "word_count": {

            "gt": 1000,

            "lte": 1000000

          }

        }

      }

    }

    #gte:greater than  equal

    POST 192.168.100.102:9200/book/_search

    {

      "query": {

        "range": {

          "publish_date": {

            "gt": "2007-12-01",

            "lte": "now"

           }

         }

      }

    }

    Filter Content

    在查询过程中,只判断该文档是否满足条件,只有yes后者no

    #

    POST 192.168.100.102:9200/book/_search

    {

      "query": {

        "bool": {

          "filter": {

            "term": {

              "word_count": 100000

             }

          }

        }

      }

    }

    复合查询

    常用查询

    固定分数查询布尔查询

    #查询条件title=”java”

    POST 192.168.100.102:9200/_search

    {

      "query": {

        "match": {

          "title": "java"

        }

      }

    }

    #

    POST 192.168.100.102:9200/_search

    {

      "query": {

        "constant_score": {

          "filter": {

            "match": {

              "title": "java"

            }

          }

        }

      }

    }

    #

    POST 192.168.100.102:9200/_search

    {

      "query": {

        "constant_score": {

          "filter": {

            "match": {

              "title": "java"

            }

          }

        }

      },

      "boost": 2

    }

    #

    POST 192.168.100.102:9200/_search

    {

      "query": {

        "bool": {

          "should": [

            {

              "match": {"author": "金庸"}

            },

            {

              "match": {"title": "java"}

            }

          ]

        }

      }

    }

    #

    POST 192.168.100.102:9200/_search

    {

      "query": {

        "bool": {

          "must": [

            {

              "match": {"author": "金庸"}

            },

            {

              "match": {"title": "java"}

            }

          ]

          "filter": [

              {

                "term": {

                  "word_count": 100000

                }

              }

          ]

        }

      }

    }

    #

    POST 192.168.100.102:9200/_search

    {

      "query": {

        "bool": {

          "must_not": {

              "term": {

                "author": "hoo"

              }

           }

        }

      }

    }

  • 相关阅读:
    Java DB 访问(三)mybatis mapper interface接口
    android stdio 安装后gradle 编译失败,设置代理不管用
    超星自动签到并邮件通知
    关于解决Mac使用docker安装SQL server for Linux 中文乱码问题
    Bom简单介绍
    grid-layout
    Position
    前端学习(注册表)
    关于学精通一门语言的个人看法(欢迎留言补充)
    Google 最新推出数据集搜索
  • 原文地址:https://www.cnblogs.com/ylht/p/10175559.html
Copyright © 2011-2022 走看看