ElasticSearch实战(二十四)-查询语法扩展

Posted 张志翔ۤ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ElasticSearch实战(二十四)-查询语法扩展相关的知识,希望对你有一定的参考价值。

        本文主要对平时工作中常用的DSL查询语法做一下汇总,特此记录便于日后查阅。

        1、term:关键词过滤

        term主要用于精确匹配,如字符串、数值、日期等(不适合情况:1.列中除英文字符外有其它值 2.字符串值中有冒号或中文 3.系统自带属性如_version),命令如下:

GET company-001/_search
{
  "query": {
    "term": {
      "companyName": {
        "value": "chicken"
      }
    }
  }
}

        2、terms:多关键词过滤

        跟term有点类似,但可以同时指定多个条件,相当于union all的作用,汇聚所有查询的值,命令如下:

GET company-001/_search
{
   "query": {
       "terms": {"date": ["2014-09-01","2014-10-03"]}
   }
}

        3、range:范围过滤

        范围查询会用到,命令如下:

GET company-001/_search
{
   "query": {
       "range":{
           "

以上是关于ElasticSearch实战(二十四)-查询语法扩展的主要内容,如果未能解决你的问题,请参考以下文章

ElasticSearch实战(二十四)-数据更新过程与单条数据更新方式

ElasticSearch实战(二十三)-查询并更新匹配文档(update_by_query)

ElasticSearch实战(二十三)-查询并更新匹配文档(update_by_query)

ElasticSearch(二十四)基于scoll技术滚动搜索大量数据

ElasticSearch实战(二十八)-高亮查询

ElasticSearch实战(二十八)-高亮查询