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"

          }

       }

    }

  }

}

转载于:https://www.cnblogs.com/ylht/p/10175559.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值