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"

          }

       }

    }

  }

}

ES高级查询的更多相关文章

  1. 测试使用索引库crud和高级查询分页

    1.搭建ES的服务 导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifa ...

  2. 031 Spring Data Elasticsearch学习笔记---重点掌握第5节高级查询和第6节聚合部分

    Elasticsearch提供的Java客户端有一些不太方便的地方: 很多地方需要拼接Json字符串,在java中拼接字符串有多恐怖你应该懂的 需要自己把对象序列化为json存储 查询到结果也需要自己 ...

  3. elasticsearch 高级查询

    高级查询 子条件查询 (特定字段查询所指特定值) 复合条件查询 (以一定的逻辑组合子条件查询) 一.子条件查询 子条件查询分为 query context.filter context 1.query ...

  4. java整合Elasticsearch,实现crud以及高级查询的分页,范围,排序功能,泰文分词器的使用,分组,最大,最小,平均值,以及自动补全功能

    //为index创建mapping,index相当于mysql的数据库,数据库里的表也要给各个字段创建类型,所以index也要给字段事先设置好类型: 使用postMan或者其他工具创建:(此处我使用p ...

  5. MongoDB高级查询详细

    前言 前几篇,老玩家绕道即可,新手晚上闲着也是蛋疼,不如把命令敲一边,这样你就会对MongoDB有一定的掌握啦.如果没有安装MongoDB去看我的上一篇博客  MongoDB下载安装与简单增删改查 前 ...

  6. T-SQL高级查询语句

    高级查询 1.连接查询,对结果集列的扩展select * from info select * from info,nation #形成笛卡尔积select * from info,nation wh ...

  7. SQL Server高级查询

    简介 关于数据库,我们经常会听说"增查删改"之类的词语,听起来很简单,但是如果想要准确的获取到需要的数据的话,还是要花点功夫的.下面由我来和大家谈谈高级查询的用法以及和普通查询的区 ...

  8. mongodb高级查询

    前几篇,老玩家绕道即可,新手晚上闲着也是蛋疼,不如把命令敲一边,这样你就会对MongoDB有一定的掌握啦.如果没有安装MongoDB去看我的上一篇博客  MongoDB下载安装与简单增删改查 前奏:启 ...

  9. MySQL高级查询语句

    高级查询: 一:多表连接 1.select Info.Code,Info.Name,Nation.Name from Info,Nation where Info.Nation = Nation.Co ...

随机推荐

  1. http://www.16aspx.com/Code/Show/5352

    http://www.16aspx.com/Code/Show/5352 可视化工作流引擎RoadFlowV1.3 http://www.cnblogs.com/f2flow/p/4212678.ht ...

  2. eclipse提速03 - 禁用动画

  3. win8,win10里面内置的IE浏览器网银无法输入密码

    win8,win10里面内置的IE浏览器网银无法输入密码,安装控件也没效果,部分网银直接导致IE崩溃,只需要简单设置即可解决. 方法/步骤   1 打开IE浏览器,点击右上角的小齿轮图标,在下拉菜单中 ...

  4. DWR(AJAX)+Highcharts绘制曲线图,饼图

    基本需求: 1. 在前台会用DWR框架(或者AJAX)调用Java后台代码获取要在Hightcharts展示的数据 2. 了解JSON(JavaScript Object Notation)的格式 3 ...

  5. Python第五讲

    一.冒泡算法 1.将两个变量的值互换 a1 = 123 a2 = 456 #要想将a1与a2的值进行位置互换需要借助一个中间变量(temp) temp = a1#将a1的值赋值给temp(temp=1 ...

  6. Java静态分派与动态分派(二)

    方法调用并不等于方法执行,方法调用阶段唯一的任务就是确定被调用方法的版本(即调用哪一个方法),暂时还不涉及方法内部的具体运行过程. 在程序运行时,进行方法调用是最普遍.最频繁的操作,但是Class文件 ...

  7. Android手机中UID、PID作用及区别

    PID 指进程ID. PID是进程的身份标识,程序一旦运行,就会给应用分配一个独一无二的PID(ps:一个应用可能包含多个进程,每个进程有唯一的一个PID) 进程终止后PID会被系统收回,再次打开应用 ...

  8. BC1.2的一些心得

    什么叫DCD DataContact Detect(DCD) 1.首先是DCD 2.然后是Primary detection 3.然后是Secondary detection 检測充电的条件是VBUS ...

  9. 【大数据project师之路】Hadoop——MapReduce概述

    一.概述. MapReduce是一种可用于数据处理的编程模型.Hadoop能够执行由各种语言编写的MapReuce程序.MapReduce分为Map部分和Reduce部分. 二.MapReduce的机 ...

  10. 从Script到Code Blocks、Code Behind到MVC、MVP、MVVM(转载)

    http://www.cnblogs.com/indream/p/3602348.html 刚过去的周五(3-14)例行地主持了技术会议,主题正好是<UI层的设计模式——从Script.Code ...