zoukankan      html  css  js  c++  java
  • Elasticsearch的DSL之比较重要的几个查询语句

    1.  match_all 

    { "match_all": {}} 匹配所有的, 当不给查询条件时,默认。

     

    2. match

    进行full text search或者exact value(非string字段或not_analyzed的字段),进行匹配

     

    3. multi_match

    同时对多个字段进行同样的match

    {

        "multi_match": {

            "query":    "full text search",

            "fields":   [ "title", "body" ]

        }

    }

    4. range

    对number或时间字段进行

    {

        "range": {

            "age": {

                "gte":  20,

                "lt":   30

            }

        }

    }

    5. term

    对字段进行确切值(exact value)的查询,如数字、时间、bool、not_analyzed字段等。

    { "term": { "age":    26           }}

    { "term": { "date":   "2014-09-01" }}

    { "term": { "public": true         }}

    { "term": { "tag":    "full_text"  }}

    6. terms

    和term一样, 不同的是,可以指定多个值来进行精确匹配

    { "terms": { "tag": [ "search", "full_text", "nosql" ] }}

     

    7. exists/missing

    用来查找某个字段是否有值, 类似SQL中的 not is_null/is_null

    {

        "exists":   {

            "field":    "title"

        }

    }

  • 相关阅读:
    自考新教材-p282
    p281
    自考新教材-p279_2
    用jmap分析java程序
    用jstack工具分析java程序
    java应用maven插件动态生成webservice代码
    Java对信号的处理
    【OracleDB】 01 概述和基本操作
    【Oracle】Windows-19C 下载安装
    【Hibernate】06 查询API
  • 原文地址:https://www.cnblogs.com/-flq/p/9517934.html
Copyright © 2011-2022 走看看